2

我正在从 RSS 提要中提取信息:

http://search.library.utoronto.ca/UTL/index?Ntt=starcraft&Ntk=Anywhere&Ntx=mode+matchallpartial&N=0&Nu=p_work_normalized&Np=1&rss=1

如果您使用浏览器导航到该页面,您会得到一个漂亮的 xml 页面。

但是,如果我这样做

simplexml_load_file("the above url");

在php中,我得到

1: parser error : Document is empty
1: parser error : Start tag expected, '<' not found in my_file

那么为什么浏览器能得到它而PHP却不能呢?

如果我这样做file_get_contents("the above url"),该函数将失败并返回 FALSE。

4

1 回答 1

1

该站点正在阻止来自 PHP 的请求。

第一次运行

<?php
ini_set('user_agent', 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:16.0) Gecko/20100101 Firefox/16.0');

(或其他一些有效的用户代理),它会工作。

于 2012-10-18T15:14:01.027 回答