如何使用 selenium (Python) 定位 Instagram 关注按钮
Posted
技术标签:
【中文标题】如何使用 selenium (Python) 定位 Instagram 关注按钮【英文标题】:How to locate Instagram Follow button with selenium (Python) 【发布时间】:2019-10-24 17:20:27 【问题描述】:我正在尝试在 Instagram 页面上找到“关注”按钮元素(使用 selenium)。
我找到了用户页面 (https://www.instagram.com/USERNAME/) 的主“关注”按钮,代码如下:
follow_button = self.driver.find_element_by_css_selector('button')
虽然在点击了上面的元素 ^ 之后,现在我试图找到当您查看用户的关注者时可见的“关注”按钮。 Click here to see which buttons I'm referring to.
我尝试了以下代码,但它不起作用:
acc_follow_buttons = self.driver.find_elements_by_css_selector('button')
for acc in acc_follow_buttons[:15]:
acc.click()
time.sleep(1)
我也尝试过使用 Xpath 进行搜索,但没有成功。
任何有 Selenium 经验的人都可以帮助我找到此页面上的关注按钮的代码。
【问题讨论】:
【参考方案1】:您必须通过按钮文本搜索按钮:
Follow_Button = driver.find_element_by_xpath("//*[text()='Follow']")
【讨论】:
【参考方案2】:我没有 Instagram 帐户,所以回答有点盲目,但是关注按钮有课程吗?如果是这样,那么您可以使用 driver.find_elements_by_class_name() 来查找特定按钮。
【讨论】:
【参考方案3】:试试这个。这里的范围指向关注者的数量。添加一个代码来获取关注者数量并将其附加到范围。注意,列表从 1 开始。
for i in range(1, 10):
follow = driver.find_element_by_xpath('/html/body/div[3]/div/div[2]/ul/div/li[]/div/div[3]/button'.format(i))
follow.click()
time.sleep(0.5)
【讨论】:
以上是关于如何使用 selenium (Python) 定位 Instagram 关注按钮的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Selenium 和 Python 定位具有多个类名的元素
如何在使用 Selenium Python 之前定位伪元素 ::before
如何使用 Python Selenium 在文本框(输入)中定位和插入值?