介绍
selenium 是一套完整的web应用程序测试系统,可以模拟真实浏览器,自动化测试工具。
强大之处是 使用selenium是模拟真实用户对浏览器所做的界面输入,点击等等操作。所以能够无视各大网站的反爬虫机制!!
chromedriver是谷歌Chrom推出的headless浏览器,无界面。
具体安装比较简单,网上教程很多,这里就不多说了。
需要注意一下,如果chromedriver部署有问题,可以尝试把chromedriver.exe放在Python脚本同级目录试下~
目标
我们来实现的功能是使用slenium+chromedriver组合完成
1.百度登录
2.百度搜索
代码
上代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
import time # 导入selenium的浏览器驱动接口 from selenium import webdriver # 要想调用键盘按键操作需要引入keys包 from selenium.webdriver.common.keys import Keys # 导入chrome选项 from selenium.webdriver.chrome.options import Options if __name__ == '__main__': # 创建chrome浏览器 chrome_options = Options() chrome_options.add_argument('--headless') driver = webdriver.Chrome(chrome_options=chrome_options) #打开百度网址 driver.get("https://www.baidu.com/") time.sleep(2) print(driver.save_screenshot('打开百度.png')) #点击登录按钮 driver.find_elements_by_name('tj_login')[1].click() time.sleep(2) #点击用户名登录 driver.find_element_by_id('TANGRAM__PSP_10__footerULoginBtn').click() time.sleep(2) print(driver.save_screenshot('登录百度1.png')) #输入用户名密码 点击登录 driver.find_element_by_id('TANGRAM__PSP_10__userName').send_keys('丨哎呦丨') driver.find_element_by_id('TANGRAM__PSP_10__password').send_keys('********') #输入自己密码 driver.find_element_by_id('TANGRAM__PSP_10__submit').click() time.sleep(2) print(driver.save_screenshot('登录百度2.png')) #输入搜索内容,点击百度搜索 driver.find_element_by_id('kw').send_keys('www.u3d8.com') driver.find_element_by_id("kw").send_keys(Keys.ENTER) time.sleep(2) print(driver.save_screenshot('百度搜索.png')) |
因为我的百度账号需要手机验证,所以就不展示登录这块的截图了。。
- 本文固定链接: http://www.u3d8.com/?p=1829
- 转载请注明: 网虫虫 在 u3d8.com 发表过
[…] 本文参考文章:Python使用slenium+chromedriver爬虫教程 […]