我试图检索一些不同公司的电子邮件地址在网上搜索。我有一个带有公司名称的Excel文件,我想出了一个小脚本
不幸的是,当我试图点击谷歌的第一个结果时,我被困在了第一点上。下面是代码:
from selenium import webdriver
import pandas as pd
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.action_chains import ActionChains
g = webdriver.Chrome()
df = pd.read_excel(path)
for i in range(len(df['Company name'])):
g.get("https://www.google.com/search?q=" + df['Company name'][i] + " email")
cookies_accept = ActionChains(g)
cookies_accept.send_keys(Keys.TAB*7).send_keys(Keys.ENTER).perform()
results = g.find_elements_by_xpath('//*[@id="rso"]/div/div/div/div/div')
#this xpath does not work properly with each one of the query results page.关于如何继续下去有什么提示吗?提亚
发布于 2022-02-21 14:24:02
问题可能是谷歌的结果以不同的格式出现。有些只是显示到主页的链接,另一些则显示几个子页面。下面是一个示例搜索:

#这个xpath不能正常工作于每个查询结果页面。
如果您的方法已经对某些结果有效,那么您就走上了正确的轨道。修复方法可以是查看不同的格式,然后包含一些try except逻辑来检查每种结果格式,即在屏幕截图中为第一个和第二个"Windows“搜索结果包含单独的xpath。
https://stackoverflow.com/questions/71206868
复制相似问题