我的目標是能夠在我關注的所有Instagram(帖子+評論)用戶塊的頁面上找到大小和位置。(下面的大矩形頁面塊,左側為圖片,右側為評論)下面是一個示例:轉到 https://www.instagram.com/zuck/點擊第一篇文章我正在嘗試在上面頁面中心使用帶有評論塊的圖像,以便我可以在塊的頁面上找到大小&位置。我看到的xpath是(),div類以開頭,但是,當我刷新或轉到其他用戶時,這些更改。driver.find_element//*[@id="react-root"]/section/main/div/div/article/div[1]_97aPb所以,我正在尋找一種替代方法來找到這個元素。我希望能夠點擊下一篇文章,并能夠找到所有帖子的(帖子+評論)塊。
1 回答
慕容森
TA貢獻1853條經驗 獲得超18個贊
如何獲取文章:
根據帖子的打開方式,內容將在 div 與 或 下。如果您直接打開帖子,則沒有對話框,但是如果您搜索,則最后一個將是您要查找的帖子。@role="dialog"@id="react-root"'//div[@role="dialog" or @id="react-root"]//article
所以:
article = driver.find_elements_by_xpath('//div[@role="dialog" or @id="react-root"]//article')[-1]如何獲取文章中的下一個圖像:
next_image_arrow = article.find_element_by_xpath('.//*[contains(@class, "coreSpriteRightChevron")]')如何選擇下一篇文章(僅當文章以模式打開時才可用):
next_article_button = driver.find_element_by_xpath('//a[contains(@class, "coreSpriteRightPaginationArrow")]')如何獲得評論:
all_comments = article.find_elements_by_xpath('./div/section[2]/following-sibling::div/ul/ul')上面的 X 路徑意味著:
/div/section[2]<<文章節點中,獲取具有直接div子節點且至少具有 2 個直接部分標記子節點的所有節點,然后選擇第二個節點/following-sibling::div/ul/ul<<獲取找到的節節點,如果節節點后跟 div,并且它具有具有直接 ul 子節點且具有直接 ul 子節點,則返回它們
我希望這能回答這個問題。
添加回答
舉報
0/150
提交
取消
