簡體   English   中英

無法使用jsoup獲取html中的圖像src

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM