使用python selenium的Twitter机器人
我正在尝试用selenium制作一个twitter机器人,它将获取推文的链接,然后逐一回复。有很多。我有很多问题。首先,只有当我注销我的推特帐户时,推特才会在弹出窗口中打开,否则不会打开。我不知道原因。当tweet在弹出窗口中打开时,heart button的类为“HeartAnimation”。如果我登录了,我就无法获取推文的“数据pemalink路径”。现在我找不到回复按钮的类。我正在使用的类不工作。它正在抛出一个非接触元素。这是我的密码。如果我做错了什么,请告诉我使用python selenium的Twitter机器人,python,selenium,selenium-webdriver,twitter,bots,Python,Selenium,Selenium Webdriver,Twitter,Bots,我正在尝试用selenium制作一个twitter机器人,它将获取推文的链接,然后逐一回复。有很多。我有很多问题。首先,只有当我注销我的推特帐户时,推特才会在弹出窗口中打开,否则不会打开。我不知道原因。当tweet在弹出窗口中打开时,heart button的类为“HeartAnimation”。如果我登录了,我就无法获取推文的“数据pemalink路径”。现在我找不到回复按钮的类。我正在使用的类不工作。它正在抛出一个非接触元素。这是我的密码。如果我做错了什么,请告诉我 from seleniu
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
driver = webdriver.Firefox()
hashtag = 'pycon'
driver.get('https://twitter.com/search?q='+hashtag+'&src=typd')
time.sleep(3)
for i in range(1,3):
driver.execute_script('window.scrollTo(0,document.body.scrollHeight)')
time.sleep(30)
tweets = driver.find_elements_by_class_name('tweet')
links = [elem.get_attribute('data-permalink-path')
for elem in tweets]
time.sleep(3)
driver.get('https://twitter.com/login?prefetchTimestamp=1569146832519')
username_field = driver.find_element_by_class_name('js-username-field.email-input.js-initial-focus')
username_field.send_keys('email')
time.sleep(0.5)
pass_field = driver.find_element_by_class_name('js-password-field')
pass_field.send_keys('password')
time.sleep(0.5)
driver.find_element_by_class_name('submit.EdgeButton.EdgeButton--primary.EdgeButtom--medium').click()
time.sleep(3)
for link in links:
driver.get('https://twitter.com' + link)
time.sleep(7)
driver.find_element_by_class_name('css-1dbjc4n.r-18u37iz.r-1h0z5mdr-3qxfft.r-h4g966.r-rjfia').click()
time.sleep(2)
reply = driver.find_element_by_class_name('notranslate.public-DraftEditor-content')
reply.send_keys('wow!')
time.sleep(2)
driver.find_element_by_class_name('css-18t94o4.css-1dbjc4n.r-urgr8i.r-42olwf.r-sdzlij.r-1phboty.r-rs99b7.r-1w2pmg.r-1n0xq6e.r-1vuscfd.r-1dhvaqw.r-1fneopy.r-o7ynqc.r-6416eg.r-lrvibr').click()
time.sleep(8)
不使用硒,
还有一种使用推特刮板的方法。
您可以使用lib,高级,无需登录,无需api,
我是twpy lib的作者抓取或自动化网站是违反Twitter服务条款的。您应该使用官方的Twitter API。试试像tweepy这样的图书馆。亲爱的Andy,我看不出他对Twitter用户政策感兴趣。他想知道如何使他的推特账户自动化。你没有责任维护推特规则。