我正在创建一个Python脚本,该脚本可以帮助Instagram参与小组中的用户快速欣赏每一轮中每个人的照片。我遇到的问题是,当我进入用户个人资料时,我不知道如何使Selenium单击第一张照片。
例如,在https://www.instagram.com/earthpix/上,如果单击第一张照片,则更像是灯箱效果。我试图找到一个相关的CSS选择器,但每次都会失败。
但是它确实具有唯一的URL“ https://www.instagram.com/p/Bm023pTFeLq/?taken-by=earthpix”
我的目标是确定此URL并让Selenium对其进行导航。这样我就可以轻松点击心脏图标。
这里有提示吗?
PS,如果您想查看当前状态,我在Github上创建了一个仓库。
https://github.com/nfordhk/instaHacks/blob/engagementGroups-autoRounds/engagementGroups.py
答案 0 :(得分:0)
下面的代码获取所有A元素。您可以单击并喜欢循环播放。
photos = driver.find_elements_by_css_selector('article a')
for photo in photos:
photo.click()
#like
#close photo
经过测试的代码:
driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
driver.get("https://www.instagram.com/earthpix/");
List<WebElement> photos = driver.findElements(By.cssSelector("article a"));
for (WebElement p:photos) {
p.click();
}