准备工作:
题主使用的chrome浏览器,windows操作系统下selenium驱动程序chromedriver.exe
初学python,代码有不足的地方还请多多指教
重点在切换窗口,简书的链接会打开新的窗口,使用switch_to_window(handles[-1])实现切换为最新的窗口
实现自动打开简书,进行
1.搜索框自动填入我喜欢吃辣椒,2秒后搜索我喜欢吃辣椒
2.2秒后点击相关用户中的我喜欢吃辣椒
3.2秒后进入此文章
4.5秒后点击点赞按钮(会自动跳入登录页,不需要登录)
5.2秒后自动返回上一级
from selenium import webdriver #引入webdriver
import time
# 配置驱动 换为自己的驱动地址
driverPath = r"C:\Users\wangxuanhe\Desktop\python\chromedriver.exe"
browser = webdriver.Chrome(driverPath)
url = "https://www.jianshu.com/"
#浏览器最大化
browser.maximize_window()
#打开简书
browser.get(url)
# 切换窗口函数 切换为新打开的窗口
def switchToNewWindow():
handles = browser.window_handles
browser.switch_to_window(handles[-1])
try:
#首页搜索
searchInput = browser.find_element_by_class_name('search-input')
searchInput.send_keys('我喜欢吃辣椒')
time.sleep(2)
searchInput.submit()
#点击搜索到的用户
time.sleep(2)
#注意切换窗口
switchToNewWindow()
userDiv = browser.find_element_by_class_name('relevant')
searchClick = userDiv.find_element_by_link_text('我喜欢吃辣椒')
searchClick.click()
#进入文章
time.sleep(2)
switchToNewWindow()
noteClick = browser.find_element_by_link_text('python+Selenium简单的网页操作')
noteClick.click()
#点赞按钮
time.sleep(5)
switchToNewWindow()
likeBtn = browser.find_element_by_class_name('_2VdqdF')
likeBtn.click()
#返回上一级
time.sleep(2)
browser.back()
except:
print("未找到元素")