我需要打开以下网址
$file = "http://en.wikipedia.org/w/api.php?action=parse&page=Kundapura&prop=text&format=xml";
$fp = fopen($file, "r");
但是我收到警告http请求失败/ 403禁止
答案 0 :(得分:4)
默认的PHP用户代理被阻止;有关详细信息,请参阅Wikimedia's User-Agent policy。您可以使用脚本顶部的ini_set
轻松更改用户代理,如下所示:
ini_set("user_agent", "Testing for http://stackoverflow.com/questions/5509640");
请注意,英语维基百科禁止通过API下载许多页面(而是提供database dumps),除非approved,否则禁止实际编辑维基的自动过程。有关详细信息,请参阅their bot policy。
答案 1 :(得分:1)
你需要什么文件?如果您只需要输出,则可以尝试file_get_contents(),然后将其作为字符串而不是文件加载和操作。
答案 2 :(得分:0)