selenium的基础知识点
Posted artisticmonk
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了selenium的基础知识点相关的知识,希望对你有一定的参考价值。
from selenium import webdriver from scrapy.selector import Selector #模拟登陆 browser = webdriver.Chrome(executable_path=‘Chromedriver.exe‘) #路径是Chromedriver.exe的存放位置,windows下只要配置好这个环境就不需要了 browser.get(‘http://w‘) #需要登陆的那个网址 browser.find_element_by_xpath(‘//div[@view]/imput‘).send_keys(‘..........‘) #需要输入的表单如帐号 browser.find_element_by_xpath(‘//div[@view]/imput‘).send_keys(‘..........‘) #需要输入的表单如密码 browser.find_element_by_id(‘captcha‘).send_keys(input("有验证码输入验证码")) browser.find_element_by_xpath(‘//div[登陆的那个按钮]‘).click()#点击登陆 browser.quit()#退出浏览器
基本的点击与发送
#可以用selenium得到js加载后的html,比如抓取js加载的内容 browser = webdriver.Chrome(executable_path=‘‘) browser.get(‘http://...‘) print(browser.page_source)#js加载完成的源码 ‘‘‘ 如果需要选择器快一点就使用scrapy中的Selector ‘‘‘ Seit = Selector(text=browser.page_source) print(Seit.xpath(‘//*[@...]/text‘).extract()) #注意js加载本身就慢,在scrapy的异步当中,爬取的内容很快,导致有些js没有加载完成 #这样的话,只需要睡几秒就行
动态加载的数据获取
import time from selenium import webdriver from scrapy.selector import Selector browser = webdriver.Chrome(executable_path=‘..‘) browser.get(‘http://.....‘) Seit = Selector(text=browser.page_source) Seit.xpath(‘//div[@class=""]/text()‘).extract().send_keys("00000000") Seit.xpath(‘//div[@class=""]/text()‘).extract().send_keys(‘************‘) Seit.xpath(‘//div[@class=""]/text()‘).extract().click() #下拉 for i in range(3): ‘‘‘三次下拉操作 execute_script是用来执行js代码‘‘‘ browser.execute_script("window.scrollTo(0,document.body.scrollHeight) var lenOfPage=docment.body.scrollHeight;return lenOfPage") time.sleep(3) # phantomjs无头浏览器:http://phantomjs.org/download.html
import time
from selenium import webdriver
from scrapy.selector import Selector
browser = webdriver.Chrome(executable_path=‘..‘)
browser.get(‘http://.....‘)
Seit = Selector(text=browser.page_source)
Seit.xpath(‘//div[@class=""]/text()‘).extract().send_keys("00000000")
Seit.xpath(‘//div[@class=""]/text()‘).extract().send_keys(‘************‘)
Seit.xpath(‘//div[@class=""]/text()‘).extract().click()
#下拉
for i in range(3):
‘‘‘三次下拉操作 execute_script是用来执行js代码‘‘‘
browser.execute_script("window.scrollTo(0,document.body.scrollHeight) var lenOfPage=docment.body.scrollHeight;return lenOfPage")
time.sleep(3)
# phantomjs无头浏览器:http://phantomjs.org/download.html
以上是关于selenium的基础知识点的主要内容,如果未能解决你的问题,请参考以下文章
Selenium Xpath元素无法定位 NoSuchElementException: Message: no such element: Unable to locate element(代码片段