python 爬虫前奏四 Selenium库的使用

1、环境

windows+pycharm+selenium

2、安装selenium

2.1、win+R->cmd->pip install selenium

2.2、File->Setting->Project::项目名->Python Interpreter->双击pip->搜索selenium->install Package

如果一直安装失败,可以选择...Python Interpreter->add->选择System Interpreter->选择解释器的安装路径,比如说我的是:

C:\Users\45906\AppData\Local\Programs\Python\Python37\python.exe

也可以尝试使用国内的镜像源...Python Interpreter->双击pip->Manage Repositories->添加

清华:https://pypi.tuna.tsinghua.edu.cn/simple
阿里云:http://mirrors.aliyun.com/pypi/simple/
中国科技大学:https://pypi.mirrors.ustc.edu.cn/simple/

因为我一开始安装老是失败,但是我后面稀里糊涂的 操作,所以我就把我的改动都写在上面

3、安装Chrome浏览器和 Chromedriver

注意,这里的版本最好对照起来,避免出现其他问题

3.1、安装Chrome浏览器,直接360软件安装,我是安装稳定版,因为这个有对应的chromedriver

3.2、安装Chromedriver,chromedriver 所有版本下载地址:http://npm.taobao.org/mirrors/chromedriver/

3.3、先查看浏览器的版本,设置->帮助->关于Chrome,我的是85.0.4183.121,后面的无所谓

3.4、选择chromedriver的版本,我选择85.0.4183.87->chromedriver_win32.zip

3.5、解压chromedriver_win32.zip,双击chromedriver.exe,出现ChromeDriver was started successfully.

3.6、将chromedriver.exe放到python解释器路径下,我的是C:\Users\45906\AppData\Local\Programs\Python\Python37\python.exe

4、Selenium 快速入门

 

4.1、Selenium提供了8种定位方式:

  1. id
  2. name
  3. class name
  4. tag name
  5. link text
  6. partial link text
  7. xpath
  8. css selector

4.2、定位元素的8种方式

定位一个元素 定位多个元素 含义
find_element_by_id find_elements_by_id 通过元素id定位
find_element_by_name find_elements_by_name 通过元素name定位
find_element_by_xpath find_elements_by_xpath 通过xpath表达式定位
find_element_by_link_text find_elements_by_link_tex 通过完整超链接定位
find_element_by_partial_link_text find_elements_by_partial_link_text 通过部分链接定位
find_element_by_tag_name find_elements_by_tag_name 通过标签定位
find_element_by_class_name find_elements_by_class_name 通过类名进行定位
find_elements_by_css_selector find_elements_by_css_selector 通过css选择器进行定位

例如百度的界面,你想要自己控制搜索行

#搜索输入行
<input id="kw" name="wd" class="s_ipt" value="" maxlength="255" autocomplete="off">
#百度一下按键
<input type="submit" id="su" value="百度一下" class="bg s_btn">

通过id定位

driver.find_element_by_id("kw")

通过name定位

driver.find_element_by_name("wd")

通过class定位

driver.find_element_by_class_name("s_ipt")

通过tag name定位

driver.find_element_by_tag_name("input")

通过xpath定位,xpath定位有N种写法,这里列几个常用写法:

driver.find_element_by_xpath("//*[@id='kw']")#获取所有节点下id为kw的元素
driver.find_element_by_xpath("//*[@name='wd']")#获取所有节点下name为wd的元素
driver.find_element_by_xpath("//input[@class='s_ipt']")#获取input下的class name为s_ipt的元素
driver.find_element_by_xpath("/html/body/form/span/input")#获取/html/body/form/span/input下的元素
driver.find_element_by_xpath("//span[@class='soutu-btn']/input")#获取span下的class为soutu-btn下的span下的input元素
driver.find_element_by_xpath("//input[@id='kw' and @name='wd']")#与运算,获取input下的id为kwname为wd的元素

通过css定位,css定位有N种写法,这里列几个常用写法:

driver.find_element_by_css_selector("#kw")
driver.find_element_by_css_selector("[name=wd]")
driver.find_ele
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值