【python】selenium获取浏览器网页的元素

import requests
url="https://voice.baidu.com/act/newpneumonia/newpneumonia/?from=osari_pc_1#tab2"
res=requests.get(url)
print(res.text)
from selenium.webdriver import Chrome,ChromeOptions
import time
option = ChromeOptions()  # 创建谷歌浏览器实例
option.add_argument("--headless")  # 隐藏浏览器
option.add_argument('--no-sandbox')
browser=Chrome(options=option,,executable_path="./chromedriver.exe")
browser.get(url)#让浏览器打开url网页
#print(browser.page_source)
#copy所找目标的xpath
# 找到展开按钮并且点击
#more=c = browser.find_element_by_css_selector('#ptab-2 > div:nth-child(1) > div > p > a')
#more.click()
#time.sleep(1)#等待一秒
c = browser.find_elements_by_xpath('//*[@id="ptab-2"]/div[1]/div/section/a/div/span[2]')
print(c)
for i in c:
    print(i.text)

browser.close()

需要下载谷歌浏览器的驱动 谷歌浏览器下载链接可将浏览器驱动放置与py文件同根目录下,或者使用browser=Chrome(options=option,executable_path="./chromedriver.exe")的参数executable_path设置

browser.find_elements_by_xpath与browser.find_element_by_css_selector通过网页检查右击定位所需元素,复制selector与xpath,(可ctrl+f找出搜索框来检测复制的xpath与selector是否准确)再由浏览器定位打开获得指定元素。

出现的问题:‘WebElement’ object is not iterable
将c = browser.find_element_by_xpath改为c = browser.find_elements_by_xpath

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值