所以我正在尝试访问LinkedIn并抓取工作发布数据。我已成功使用Chrome完成此操作,并希望使用Firefox进行尝试。它应该是完全相同的代码减去启动驱动程序 - html元素应该完全相同,并且在检查它们之后。
这是我的Firefox测试代码的简单形式:
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
#driver = webdriver.Safari('/usr/bin/safaridriver')
driver = webdriver.Firefox(executable_path='/Users/Taras/bin/geckodriver')
driver.get("https://www.linkedin.com/jobs")
search1 = driver.find_element_by_name("keywords")
#now find the location input element (and clear what is already on there)
clear = driver.find_element_by_class_name("location-clear-icon")
search2 = driver.find_element_by_name("location")
clear.click()
#now send the queries to the linkedIn page and type it in
search1.send_keys("software engineering")
search2.send_keys("chicago")
search1.send_keys(Keys.RETURN)
linkElements = driver.find_elements_by_class_name("job-title-link")
print(linkElements)
links = []
#iterate through each job result and grab the link to that Job posting -- then append to links array
for a in linkElements:
linkHref= a.get_attribute("href")
links.append(linkHref)
print(links)
我达到了实际搜索结果的程度,但链接数组没有做任何事情。相同的确切代码适用于Chrome,但是,在尝试不同的html元素后,代码什么都不做。在仔细检查并检查控制台后,我得到上述错误:XML解析错误:找不到根元素 地点:https://www.linkedin.com/lite/platformtelemetry 第1行,第1列:
我不知道这意味着什么,但我认为它无法找到所述元素。我在这里错过了什么吗?