Hallo,
Ik probeer een scraper te bouwen voor Hulu. Uiteraard geen illegale films / series scrapen maar gewoon een episode list op de hulu website die gewoon zonder in te loggen te bezichtigen is.
Doel:
- Haal de pagina op van de serie waar alle episodes op staan van deze serie.
- Sla deze pagina op in Mysql
- Volgende dag ( cron job )
- Haal de pagina op van de serie waar alle episodes op staan en vergelijk deze met je Mysql record
-- verschil ?
----- Ja --> stuur pushover en vervang Mysql record met nieuwe info
----- Nee --> doe niks
Het gaat erom dat ik een melding krijg als er een nieuwe aflevering beschikbaar is.
Het Mysql gedeelte werkt en daar heb ik verder geen problemen mee.
Ik heb alleen problemen met het uitlezen van de (openbare) episode pagina.
Het gaat in dit geval om de serie Awkward.
Link: http://www.hulu.com/grid/awkward?categories=episodes
Als je naar die pagina gaat dan zie je alleen Season 1.
Je kunt dan bovenin klikken op SEASON: ALL en dan zie je alle afleveringen
Echter, ze laden niet allemaal direct, je moet zelf naar beneden scrollen om ze te tonen
Er is ook geen directe link om alle episodes te vinden. Er was een RSS feed maar die hebben ze gekilled helaas.
Mijn code so far:
Bovenstaande is nog niet af, alleen om te checken of / hoe ik alle episodes binnen kan krijgen. De rest lijkt me minder ingewikkeld.
Ik krijg de indruk dat alles 'verborgen' is achter div's ( if that makes any sense ) en ik weet niet hoe ik ze zichtbaar kan maken allemaal.
Bare with me, ben een php hobby-ist die via tutorials en samples probeert te leren.
Ik probeer een scraper te bouwen voor Hulu. Uiteraard geen illegale films / series scrapen maar gewoon een episode list op de hulu website die gewoon zonder in te loggen te bezichtigen is.
Doel:
- Haal de pagina op van de serie waar alle episodes op staan van deze serie.
- Sla deze pagina op in Mysql
- Volgende dag ( cron job )
- Haal de pagina op van de serie waar alle episodes op staan en vergelijk deze met je Mysql record
-- verschil ?
----- Ja --> stuur pushover en vervang Mysql record met nieuwe info
----- Nee --> doe niks
Het gaat erom dat ik een melding krijg als er een nieuwe aflevering beschikbaar is.
Het Mysql gedeelte werkt en daar heb ik verder geen problemen mee.
Ik heb alleen problemen met het uitlezen van de (openbare) episode pagina.
Het gaat in dit geval om de serie Awkward.
Link: http://www.hulu.com/grid/awkward?categories=episodes
Als je naar die pagina gaat dan zie je alleen Season 1.
Je kunt dan bovenin klikken op SEASON: ALL en dan zie je alle afleveringen

Echter, ze laden niet allemaal direct, je moet zelf naar beneden scrollen om ze te tonen

Er is ook geen directe link om alle episodes te vinden. Er was een RSS feed maar die hebben ze gekilled helaas.
Mijn code so far:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
| <?php $con=mysqli_connect("localhost","username","password","database"); // Check connection if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); } $result = mysqli_query($con,"SELECT * FROM hulu"); while($row = mysqli_fetch_array($result)) { $naam = $row['naam']; // Awkward $website = $row['website']; // http://www.hulu.com/grid/awkward?categories=episodes $notificatie = $row['notificatie']; // Nee // echo $naam; } mysqli_close($con); $my_var = file_get_contents($website); echo $website; echo "<br>"; echo "<hr>"; echo $my_var; ?> |
Bovenstaande is nog niet af, alleen om te checken of / hoe ik alle episodes binnen kan krijgen. De rest lijkt me minder ingewikkeld.
Ik krijg de indruk dat alles 'verborgen' is achter div's ( if that makes any sense ) en ik weet niet hoe ik ze zichtbaar kan maken allemaal.
Bare with me, ben een php hobby-ist die via tutorials en samples probeert te leren.