selenium
介绍:Selenium 是一种开源工具,用于在 Web 浏览器上执行自动化测试。
背景:对已推送到搜索引擎的url进行下线(用户反馈不想展现)。
版本:python 3.8.9,selenium 4.15.2。
from selenium import webdriver
from selenium.webdriver.common.by import By
import re
import time
query = input('请输入query:')
pnmax = input('请输入最大的页数:')
pnmax = int(pnmax) * 10
pattern = input('请输入待匹配url决定性的标识,如 openNotice:')
driver = webdriver.Firefox()
# 待下线的url保存在文件中
with open('/Users/sjm/offlineurl', 'w') as f:
# 遍历所有的页面
for pn in range(0, pnmax, 10):
# 通过百度搜索试验出是否能用这种简略的方式返回结果。其中 site 可以限定返回指定域名的搜索结果
baseurl = 'https://www.baidu.com/s?wd=' + query + ' site:aiqicha.baidu.com&pn=' + str(pn)
driver.get(baseurl)
# 参考xpath语法
elements = driver.find_elements(By.XPATH, "//div[@class='result c-container xpath-log new-pmd']")
for each in elements:
# mu就是链接
mu = each.get_attribute("mu")
match = re.search(pattern, mu)
if match:
f.write(mu)
# 防止过快的请求
time.sleep((pn + 10) / 10)
driver.close()
标签:10,python,selenium,工具集,mu,pnmax,import,pn
From: https://www.cnblogs.com/sjmuvx/p/17847330.html