[英]Can't get image src in html using jsoup
我正在嘗試使用帶有此查詢的jsoup獲取帖子的instagram img,但沒有任何結果。請幫助!
我要從此帖子中刪除的img標簽具有id = pImage_0
doc = Jsoup.connect("https://www.instagram.com/p/BQGyI2JjKUN/").get();
title = doc.title();
System.out.println("Title:"+title);
Elements images = doc.select("img[src~=(?i)\\.(png|jpe?g|gif)]");
for (Element image : images) {
System.out.println("src : " + image.attr("src"));
System.out.println("height : " + image.attr("height"));
System.out.println("width : " + image.attr("width"));
System.out.println("alt : " + image.attr("alt"));
}
該網頁https://www.instagram.com/p/BQGyI2JjKUN/
是用Javascript呈現的,因此當您發出http請求並嘗試抓取該網站時,您獲得的所有內容都是javascript,這就是為什么嘗試sysout
時看不到任何內容的原因image.attr
,因為它什么也找不到。 如果您查看view-source:https://www.instagram.com/p/BQGyI2JjKUN/
,這就是您要抓取的全部內容。 抓取這些圖像的唯一方法是通過創建bot或使用instagram的API偽造網絡瀏覽會話。
您可以使用Google java headless browser
,找到一些可能有用的東西。 這里有一些有用的也可以做到的
該網站使用AJAX調用來加載其數據。
簡單的請求根本不會執行JS。
您有2個選擇。
1)檢查所有AJAX調用/ URL及其參數,然后向這些URL發送請求2)或使用Selenium或PhantomJS。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.