我在JSoup

时间:2015-06-28 23:12:55

标签: java android jsoup

我使用Jsoup通过URL获取html文档。当我通过chrome打开此Url并显示页面的源代码时,我发现此处的文档与我在应用程序中提取的文档不同。 所以我无法提取所需的元素。你有没有见过这样的问题?

2 个答案:

答案 0 :(得分:2)

这可能是因为您的JSOUP请求与您的浏览器具有不同的User Agent。通过这样做来改变它:

doc = Jsoup.connect("myURL")
        .userAgent("Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36")
        .get();

您可以通过启动浏览器的开发者工具(f12)并检查值来找到ex USER AGENT字符串。

答案 1 :(得分:0)

Document document;
String url = "www.google.com";
Response response;

try {

    response = Jsoup
        .connect(url)
        .ignoreContentType(true)
        .userAgent(
         "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/46.0.1")
        .referrer("http://www.google.com")
        .timeout(12000)
        .followRedirects(true)
        .execute();

    document = response.parse();