Selenium用的好不好,主要看你html源码读的好不好
1句代码:selenium最基础的查找网页元素的功能find_element_by_*
2个动作:在找到元素之后,可以选择点击或者输入 find_element_by*.click()或者find_element_by_*.send_keys('你需要输入的内容')
8个属性,你只需要html中的id,name, xpath,hyperlink,tag,class,css是什么就可以了。
- find_element_by_id
- find_element_by_name
- find_element_by_xpath
- find_element_by_link_text
- find_element_by_partial_link_text
- find_element_by_tag_name
- find_element_by_class_name
- find_element_by_css_selector
话不多说,我们开始。
1.从头开始安装
1. Selenium安装
pip install selenium
通过代码知道是否安装好
from selenium import webdriver
2.Webdriver安装
1.下载webdriver:在浏览器中输入chrome://version/检查版本.你的webdriver的版本应该和你的浏览器版本保持一致
Webdriver下载路径:http://chromedriver.storage.googleapis.com/index.html,驱动Chrome;
geckodriver下载路径:https://github.com/mozilla/geckodriver/releases,驱动Firefox;
2.下载下来的webdriver需要放到python.exe路径中
如果你不知道python.exe的路径?你的Win10可以直接搜索python.exe,右键点击打开所在文件夹,再把Webdriver移动到相同文件夹
2.简单调试
import time
driver = webdriver.Chrome()
#打开百度
driver.get("http://www.baidu.com")
#等待3秒
time.sleep(3)
#关闭网页
driver.close()
会正常打开chrome浏览器,同时访问百度,3秒后自动关闭。这里driver可以是任意名称
3. 找到你想要操作的html内容
这里以chrome为例:
1. 人工从浏览器打开一个网址,以百度为例。然后鼠标右键----检查。或者chrome直接F12
2. 然后弹出很多的元素,这就是你需要的所有element了
3.然后找到我们需要点击的element,比如说这里的“百度一下”。我们可以首先点击左上角的箭头,然后再把鼠标移动到目标element
4. 这里出现的就是我们需要告诉selenium的元素了。然后通过find_element_by_,让selenium自动输入或者点击我们需要的操作。
比如说这里的tag是input,则一般表示输入框
如果tag是a,一般表示超链接
如果tag是img,则一般表示图片。
tag就是<>最前面的这一个名称
5. 然后通过右键-----复制-----Xpath或者其他元素,然后通过下面的函数,写入程序进行查找即可。