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基础知识

Selenium Xpath元素无法定位 NoSuchElementException: Message: no such element: Unable to locate element(代码片段

selenium入门基础知识

python+selenium-基础知识

Python Selenium源码阅读以及基础知识的补充

Selenium基础知识