Python学习笔记——爬虫之selenium

资料参考:Python 网络爬虫的常用库汇总

# 1.导入库
from selenium.webdriver import Chrome
# 2.获得驱动
driver = Chrome(executable_path=r'D:\python\chromedriver_win32\chromedriver.exe')
# 3.1 使用驱动 ,打开网页
driver.get('https://www.baidu.com/')
# 3.2 使用驱动 ,获得 webElement
t_element = driver.find_element_by_tag_name('a')
# 4.处理数据 ,提取元素的href对应的值
print(t_element.get_property('href'))

1.进入官网,查看开发文档学习 

https://selenium.dev/documentation/zh-cn/

 2.安装selenium

官网介绍了两种安装方法,我是用了其一。

3.下载浏览器的驱动

下载网址:https://chromedriver.storage.googleapis.com/index.html

下载后:

1.chromedriver.exe放在python的安装目录下面(不用再配置环境变量)

2.chromedriver.exe放在其他目录,设置指定路径​​​​​​​

​​​​​​​

 参考:https://jingyan.baidu.com/article/7082dc1c3c4642e40b89bd68.html

4.代码测试:

4.1使用百度自动搜索

# 1.导入库
from selenium.webdriver import Chrome
# 2.获得驱动
driver = Chrome(executable_path=r'D:\python\chromedriver_win32\chromedriver.exe')
# 3.1 使用驱动 ,打开网页
driver.get('https://www.baidu.com/')
# 3.2 使用驱动 ,获得 webElement
t_element = driver.find_element_by_id("kw")#获得输入框元素
t_element2 = driver.find_element_by_id("su")#获得提交按钮元素
# 4.处理获得的元素
t_element.send_keys("python")
t_element2.click()

4.2到达指定页面 使用js

# 1.导入库
from selenium.webdriver import Chrome
# 2.获得驱动
driver = Chrome(executable_path=r'D:\python\chromedriver_win32\chromedriver.exe')
# 3.1 使用驱动 ,打开网页
driver.get('https://www.baidu.com/')
# 3.2 使用驱动 ,执行js脚本
js = 'alert("你好,我是一个警告框!")'#弹窗的js脚本
driver.execute_script(js)#执行js脚本
# 4.处理获得的元素

可能出现报错:(驱动和谷歌浏览器两者都是最新的,应该没问题

原因的版本号不匹配:

参考:https://blog.youkuaiyun.com/tscaxx/article/details/108445647

下载新的驱动:

谷歌浏览器:版本 68.0.3440.106(正式版本) (64 位)使用  70.0.3538.16  版本驱动测试可用

5.源码简单分析(可参考安装目录,查看文件之间的关系)

5.1 查看驱动对象的一些方法

 

上面这张截图文件里面的一些方法,是有关浏览器的一些操作,

1.浏览器 刷新,前进、后退等,

2.获取指定html元素(根据id,class等)

3.获取当前页面的所有html:

import time
from selenium.webdriver import Chrome

with Chrome() as browser:
    browser.get("http://www.baidu.com")#打开百度
    time.sleep(5)
    # js = 'alert("你好,我是一个警告框!")'#弹窗的js脚本
    # browser.execute_script(js)#执行js脚本
    print(browser.page_source)#获取浏览器的页面资源
    time.sleep(20)

4.执行js脚本

import time
from selenium.webdriver import Chrome

with Chrome() as browser:
    browser.get("http://www.baidu.com")#打开百度
    time.sleep(5)
    js = 'alert("你好,我是一个警告框!")'#弹窗的js脚本
    browser.execute_script(js)#执行js脚本
    #print(browser.page_source)
    time.sleep(20)

5.其他的看源探索


获取元素后的一些操作,在下面的这个类里面 点击操作或者提交表单操作等

6.待续。。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值