Ik wil de nieuwskopjes van het financiele dagblad parsen maar ik krijg het niet voor elkaar om correcte cookies voor het inloggen mee te geven.
als je je gratis registreerd op www.fd.nl en ingelogd bent zie je op de volgende pagina deeplinks naar de betreffende pagina:
http://www.fd.nl/Nieuwsdienst.asp?Context=N%7C1
als je niet ingelogd bent zie je popups zoals:
javascript:ShowMigrateLaagPopup('1','N|1');
en als je je registreert zie je een goede deeplink zoals bijvoorbeeld:
http://www.fd.nl/ShowNews.asp?Context=N%7C1&NewsId=91624
Als je betaald zie je ook wat de deeplink is van de ('2',N|1'); popups zit.
ik probeer de volgende code om via php de pagina te parsen maar het lukt me niet om schijnbaar correcte cookies mee te geven zodat het script denkt dat de parser ingelogd is....
weet iemand raad?
als je je gratis registreerd op www.fd.nl en ingelogd bent zie je op de volgende pagina deeplinks naar de betreffende pagina:
http://www.fd.nl/Nieuwsdienst.asp?Context=N%7C1
als je niet ingelogd bent zie je popups zoals:
javascript:ShowMigrateLaagPopup('1','N|1');
en als je je registreert zie je een goede deeplink zoals bijvoorbeeld:
http://www.fd.nl/ShowNews.asp?Context=N%7C1&NewsId=91624
Als je betaald zie je ook wat de deeplink is van de ('2',N|1'); popups zit.
ik probeer de volgende code om via php de pagina te parsen maar het lukt me niet om schijnbaar correcte cookies mee te geven zodat het script denkt dat de parser ingelogd is....
weet iemand raad?
PHP:
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
| <? $loginnaam = "bla"; $paswoord = "boeh"; $data = "ShowPage=Login&Continue=Nieuwsdienst.asp?Context=N|1&Login=Inloggen&LoginName=".$loginnaam."&password=".$paswoord; $file = fsockopen("www.fd.nl",80,$errno,$errstr,25); if(!$file) { print ("fout tijdens het openen"); exit; } fputs($file,"POST /Register.asp HTTP/1.0\r\n"); fputs($file,"Host: www.fd.nl\r\n"); fputs($file,"Content-type: application/x-www-form-urlencoded\r\n"); fputs($file,"Content-length: ".strlen($data)."\r\n"); fputs($file,"User-agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows 98)\r\n"); fputs($file,"Connection: close\r\n\r\n"); fputs($file,$data); while(!feof($file)) { $output = fgets ($file, 1024); if ($counter == "") { if (preg_match ("/Set-Cookie: (.*?); expires/i", $output, $new)) { $cookie1 = urldecode($new["1"]); $counter = 1; } } elseif ($counter == "1") { if (preg_match ("/Set-Cookie: (.*?); expires/i", $output, $new)) { $cookie2 = urldecode($new["1"]); $counter = 2; } } } fclose($file); $file = fsockopen("www.fd.nl",80,$errno,$errstr,25); if(!$file) { print ("fout tijdens het openen"); exit; } fputs($file,"GET /Nieuwsdienst.asp?Context=N|1&UpdateTickerContinue=1 HTTP/1.0\r\n"); fputs($file,"Host: www.fd.nl\r\n"); fputs($file,"Content-Type: text/html\r\n"); fputs($file,"User-agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows 98)\r\n"); fputs($file,"Cookie: ".urlencode($cookie1)."\r\n"); fputs($file,"Cookie: ".urlencode($cookie2)."\r\n"); fputs($file,"Connection: Close\r\n\r\n"); while(!feof($file)) { $output = fgets ($file, 1024); echo $output; } fclose($file); ?> |
[ Voor 11% gewijzigd door Glimi op 28-05-2003 15:35 ]