我无法使用 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");
有人可以指出我在这里缺少什么吗?
我使用过的网址是:
和
此外,如果可能的话,我想使用 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/