[英]Jsoup fails on certain sites
我正在尝试使用jsoup解析和处理HTML。 对于大多数URL来说,它工作正常,但在某些URL上却失败。 例如
这有效:
Document document = Jsoup.connect("https://www.yahoo.com/politics/time-to-take-sanders-seriously-1342599418519606.html")
.userAgent("Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11 Firefox/19.0")
.timeout(10*1000)
.get();
这将失败:
Document document = Jsoup.connect("http://www.sciencedaily.com/releases/2016/02/160201215944.htm")
.userAgent("Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.95 Safari/537.11 Firefox/19.0")
.timeout(10*1000)
.get();
我哪里出问题了?
谢谢。
似乎在第二个示例中,您获得了简短的HTML,除了一些JavaScript之外,其中没有任何其他内容。 因此,获取页面效果很好。 问题可能是由于Jsoup无法执行JavaScript,所以JavaScript无法执行,这超出了JSoup的范围。
为此,您需要使用其他方法,例如Selenium Webdriver或HTMLUnit。
该页面是常规HTML
。 我不知道如何解释它,但是如果将请求更改为POST
请求,即使我的浏览器(Firefox)使用GET
请求获取页面,也可以GET
。
我试图添加所有由浏览器发送的pther头- HOST
, ACCEPT
等,但只有改变requet到POST
做的工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.