dashifen / meetup-scraper

A Meetup PHP scraper class for getting a multi-dimensional array of past or future events for a given group

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MeetupEvents.php

A PHP scraper class for getting a multi-dimensional array of events for a given group. This is likely very fragile, as all HTML scrapers are ;) If you want more stability, Meetup has an API: https://www.meetup.com/meetup_api/

This plugin requires php-xml: https://www.php.net/manual/en/dom.installation.php

Sample Code

Here we pass in synshop into the get_future_meetup_events() method to get the events future from the SYN Shop group and then loop through the resulting $events array printing out the human_date and title and then stop after 6 events:

<?php
require_once('MeetupEvents.php');
$meetup = new MeetupEvents();
$events = $meetup->get_future_meetup_events('synshop');
$count = 1;
foreach ( $events as $event){
        print "<div class='date {$event['status']}'>{$event['human_date']}</div>";
        print "<div class='event'>{$event['title']}</div>";
        $count++;
        if ($count > 6) break;
}

To show past events, you would have called get_past_meetup_events() instead.

Event Elements

The script returns and array of events. Each event has the following key value pairs:

  • link
  • title
  • epoch
  • human_date
  • description
  • status (active or cancelled)
  • img (may be UNSET or is path to image for event)
  • location

Here's a var_dump() of a sample event:

Array
(
    [status] => active
    [link] => https://www.meetup.com/synshop/events/bfhxflyzmbvb/
    [title] => Paid Members Only:  Danger Room Tools and Shop Orientation
    [epoch] => 15686856
    [human_date] => Mon, Sep 16, 7:00 PM
    [description] => Tonight we cover the major rules in the Danger room, and the Major Rules for safety in the danger room.
    [img] => https://secure.meetupstatic.com/photos/event/2/a/6/e/event_0862.webp
    [locaiton] => Link visible for attendees
)

About

A Meetup PHP scraper class for getting a multi-dimensional array of past or future events for a given group

License:MIT License


Languages

Language:PHP 100.0%