Implexml_Load_FILE文档为空

2022-04-13 00:00:00 xml-parsing php simplexml

我正在从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。


解决方案

网站正在阻止来自php的请求。

第一次运行

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

(或其他有效的用户代理),它将正常工作。

相关文章