如何使用 fopen() 打开远程文件?

Rag*_*ghs 1 php wikipedia-api http-status-code-403

我需要打开以下网址

$file = "http://en.wikipedia.org/w/api.php?action=parse&page=Kundapura&prop=text&format=xml"; 

$fp = fopen($file, "r"); 
Run Code Online (Sandbox Code Playgroud)

但我收到警告 http 请求失败/ 403 禁止

Ano*_*mie 5

默认 PHP 用户代理被阻止;有关详细信息,请参阅维基媒体的用户代理政策ini_set您可以使用脚本顶部轻松更改用户代理,如下所示:

ini_set("user_agent", "Testing for http://stackoverflow.com/questions/5509640");
Run Code Online (Sandbox Code Playgroud)

请注意,英文维基百科禁止通过 API 下载许多页面(而是提供数据库转储),并且禁止实际编辑 wiki 的自动化进程,除非获得批准。有关详细信息,请参阅他们的机器人政策