java - 无法使用 Jsoup 从 amazon 或 Flipkart 页面解析 img 和名称

标签 java javascript jquery jsoup

我无法使用 Jsoup 获取 Amazon 或 Flipkart 上产品的主图片和名称。

我的 java/jsoup 代码是:

// For amazon
Connection connection = Jsoup.connect(url).timeout(5000).maxBodySize(1024*1024*10);
Document doc = connection.get();
Elements imgs = doc.select("img#landingImage");
Elements names = doc.select("span#productTitle");

// For flipkart
Connection connection = Jsoup.connect(url).timeout(5000).maxBodySize(1024*1024*10);
Document doc = connection.get();
Elements imgs = doc.select("h1.title");
Elements names = doc.select("img.productImage.current");

有人可以指出我在这里缺少什么吗?

我使用过的网址是:

http://www.flipkart.com/lenovo-yoga-2-tablet-android-10-inch/p/itmeyqkznqa2zjf5?pid=TABEYQKXWAXMSGER&srno=b_2&offer=ExchangeOffer_LenovoYoga.&ref=9ea008ab-ae95-4f52-8ef7-3ef1a54947ae

http://www.amazon.com/gp/product/B00LZGBU3Y/ref=s9_psimh_gw_p504_d0_i5?pf_rd_m=ATVPDKIKX0DER&pf_rd_s=desktop-1&pf_rd_r=0ESK1KNE31TBRVC8115Q&pf_rd_t=36701&pf_rd_p=1970559082&pf_rd_i=desktop

此外,如果可能的话,我想使用 javascript 和 jquery 在前端进行此解析。

有没有办法做到同样的事情?

最佳答案

发现问题了。

当我们使用 java.net.URL 的 URL 获取服务时,GAE 中的 Jsoup 可以工作:

private String read(String url) throws IOException
{
    URL urlObj = new URL(url);
    BufferedReader reader = new BufferedReader(new InputStreamReader(urlObj .openStream()));
    String line;
    StringBuffer sbuf = new StringBuffer();

    while ((line = reader.readLine()) != null) {
        if (line.trim().length() > 0)
            sbuf.append(line).append("\n");
    }
    reader.close();
    return sbuf.toString();
}

然后你使用常规 Jsoup :

String html = read(url);
Document doc = Jsoup.parse(html);

执行上述操作效果非常好。

关于java - 无法使用 Jsoup 从 amazon 或 Flipkart 页面解析 img 和名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28747797/

相关文章:

javascript - 错误 repo github :angular not found! [jspm 安装]

javascript - Javascript 函数只运行一次

javascript - 如何使用 php 和 jquery 将单选按钮值传递给其他程序并将值插入数据库

java - 如何在 Android 的 ActionBar 上为应用程序图标添加点击监听器?

java - 强化规则不触发

javascript - array.slice 是否足以处理 JavaScript 中的多维数组?

javascript - 处理语言 vs javascript?

javascript - 如何使用javascript防止ajax响应中的window.onbeforeunload函数

java - 具有许多参数的枚举

java - 如何及时检测网卡是否与Java连接?