I've found a nice tutorial for a php script that grabs de events of Facebook pages:
The Facebook graph wil return data in JSON format:
Name of page/event owner, title, date, time, enddate, endtime, venue name, description of the event, category (which is usually not set by the event owner), url of the FB event, url to tickets, image (url), fb event id, modification date.
You'll need either an extra table that matches de Facebook venue names with your venue id's, or you need to update your venues table to match the exact Facebook names (and make sure no-one changes this).
A FB event has an unique id, in the form fb-1837997059776901. This will give you a match to update an event already in your table.
The date/time is in the format: 2017-03-24T14:17:54+0000 but this can easily be split into a separate date and time.
Biggest issue is that Facebook will not give you any category for the event, in most of the cases. So either you have to import the events into a default category, or you have to add the category afterwards by hand. (In some cases you might sure that a certain venue only has one type of events, like a cinema, but I wouldn't count on it 100%)
I've written a script that will output a table which I can import into Excel, and manually add the category and check if the venues are correctly matched. Then I manually import the data directly into my JEM events and cat-events tables. It's a bit of extra work, but it saves me time copying and pasting each separate FB event.
Maybe someone had ideas how to do this automatically with a script.