Op een website heb ik de code gevonden voor zowel Google Video als Youtube om video's te kunnen downloaden voor offline gebruik. Voor Youtube is het prima gelukt, dat werkt perfect. Alleen voor Google niet, hoewel ik de URL heb geformuleerd en hij direct in de browser prima werkt, krijg ik als ik hem probeer op te halen met PHP een 403 Forbidden error:
Levert op:
Maar kopieer ik de link direct in de browser en ram op enter, dan krijg ik keurig een downloadvenstertje.
Zou dit te maken kunnen hebben met een serverdetectie aan Googles kant dat je als PHP script dat niet mag opvragen? En zo ja, hoe fop ik de server dan? Ik zou niet weten waar hij op kan checken, behalve de headers die PHP standaard meestuurt, namelijk:
Dat zou natuurlijk de boosdoener kunnen zijn, maar iemand enig idee hoe ik headers kan unsetten? Simpelweg unset($headers[0]) werkt niet lijkt mij. header("X-Powered-By: "); replaced de header, maar verwijderd hem niet.
Any ideas?
PHP:
1
2
| $url = "http://vp.video.google.com/videodownload?version=0&secureurl=".$google_url; $vid = file_get_contents($url); |
Levert op:
code:
1
2
| Warning: file_get_contents(http://vp.video.google.com/videodownload?version=0&secureurl=[hier die code]) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.0 403 Forbidden in /Applications/MAMP/htdocs/yackhals/plugins.inc.php on line 82 |
Maar kopieer ik de link direct in de browser en ram op enter, dan krijg ik keurig een downloadvenstertje.
Zou dit te maken kunnen hebben met een serverdetectie aan Googles kant dat je als PHP script dat niet mag opvragen? En zo ja, hoe fop ik de server dan? Ik zou niet weten waar hij op kan checken, behalve de headers die PHP standaard meestuurt, namelijk:
code:
1
2
3
4
5
| Array ( [0] => X-Powered-By: PHP/5.1.6 [1] => Content-type: text/html ) |
Dat zou natuurlijk de boosdoener kunnen zijn, maar iemand enig idee hoe ik headers kan unsetten? Simpelweg unset($headers[0]) werkt niet lijkt mij. header("X-Powered-By: "); replaced de header, maar verwijderd hem niet.
Any ideas?