使用selenium爬取网站信息,求助
我使用语句list_YibNq = web.find_elements(by=By.XPATH,value='//*[@id="jobList"]/div'),该语句本应该获取大量数据,但为什么每次只能获取到第一条?源代码如下:
"""
1.使用selenium打开谷歌浏览器访问网站‘lagou.com’
2.点击全国,并在输入框输入‘python’
3.将页面上的公司名称,职位名称,薪资打印出来
"""
from selenium.webdriver import Chrome
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
import time
web = Chrome()
web.get('http://lagou.com')
#找到某个元素,点击它
el = web.find_element(by=By.XPATH,value='//*[@id="changeCityBox"]/p/a')
el.click()
#找到输入框,输入python,=》输入回车/点击搜索按钮
web.find_element(by=By.XPATH,value='//*[@id="search_input"]').send_keys("python",Keys.ENTER)
time.sleep(1)
#查找数据存放的位置,对数据进行提取
list_YibNq = web.find_elements(by=By.XPATH,value='//*[@id="jobList"]/div')
print(len(list_YibNq))
#for item in list_YibNq:
#job_name = item.find_element(by=By.XPATH,value='./div/div/div/div/a').text
#job_price = item.find_element(by=By.XPATH,value='./div/div/div/div/span').text
#company_name = item.find_element(by=By.XPATH,value='./div/div/div/div/a').text
# print(company_name,job_name,job_price) list_YibNq = web.find_elements(by=By.XPATH,value='//*[@id="jobList"]/div') 把那个 去掉 isdkz 发表于 2022-4-3 19:50
list_YibNq = web.find_elements(by=By.XPATH,value='//*[@id="jobList"]/div') 把那个 去掉
试过了,但还是不好使呀 莫凡辰 发表于 2022-4-4 09:58
试过了,但还是不好使呀
好吧,那我帮你调试一下 isdkz 发表于 2022-4-4 09:59
好吧,那我帮你调试一下
多谢大佬{:10_256:} isdkz 发表于 2022-4-4 09:59
好吧,那我帮你调试一下
大佬,我刚刚发现问题在哪了,现在已经解决了,多谢{:10_297:} from selenium.webdriver import Chrome
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
import time
web = Chrome()
web.get('http://lagou.com')
#找到某个元素,点击它
el = web.find_element(by=By.XPATH,value='//*[@id="changeCityBox"]/p/a')
el.click()
#找到输入框,输入python,=》输入回车/点击搜索按钮
web.find_element(by=By.XPATH,value='//*[@id="search_input"]').send_keys("python",Keys.ENTER)
time.sleep(1)
#查找数据存放的位置,对数据进行提取
list_YibNq = web.find_elements(by=By.XPATH,value='//*[@id="jobList"]/div/div') # for 循环里减少一个 div 放到这里来
print(len(list_YibNq))
for item in list_YibNq:
job_name = item.find_element(by=By.XPATH,value='./div/div/div/a').text
job_price = item.find_element(by=By.XPATH,value='./div/div/div/span').text
company_name = item.find_element(by=By.XPATH,value='./div/div/div/a').text
print(company_name,job_name,job_price) 莫凡辰 发表于 2022-4-4 10:39
大佬,我刚刚发现问题在哪了,现在已经解决了,多谢
好吧{:5_109:}
页:
[1]