
Selenium
木下瞳
这个作者很懒,什么都没留下…
展开
-
selenium 接管浏览器
参考:https://www.shuzhiduo.com/A/ke5j06Vmzr/一、问题使用selenium自动化测试爬取知乎的时候出现了:错误代码10001:请求异常请升级客户端后重新尝试,这个错误的产生是由于知乎可以检测selenium自动化测试的脚本,因此可以阻止selenium的继续访问。这也算是比较高级的反爬取措施。二、解决解决方法,使用自己打开的一个浏览器,再用selenium接管这个浏览器这样就可以完成反爬的处理。1.建议一个新的映射,以保存原来的chrome不被污染1)转载 2021-09-01 23:09:18 · 2976 阅读 · 0 评论 -
selenium自动右键保存图片到本机上
https://juejin.cn/post/6844903973795676173from selenium.webdriver.common.action_chains import ActionChainsimport pyautogui# 右键保存图片pic = driver.find_element_by_xpath('/html/body/img') # 获取元素action = ActionChains(driver).move_to_element(pic) # 移动到转载 2021-08-04 00:03:50 · 1763 阅读 · 0 评论 -
selnium打开新窗口,并打开指定连接
driver.execute_script("window.open();")handles = driver.window_handlesdriver.switch_to.window(handles[-1])driver.get(cap_url)先打开一个新窗口,获得所有窗口句柄,这里在只打开了一个窗口的基础上操作的,所以新窗口的句柄索引为最后一个,切换,再访问指定链接...原创 2021-08-03 23:49:49 · 512 阅读 · 0 评论 -
selenium xpath 定位不到元素
参考:https://www.cnblogs.com/yufeihlf/p/5689042.html1.Frame/Iframe原因定位不到元素: 这个是最常见的原因,首先要理解下frame的实质,frame中实际上是嵌入了另一个页面,而webdriver每次只能在一个页面识别,因此需要先定位到相应的frame,对那个页面里的元素进行定位。解决方案:如果iframe有name或id的话,直接使用switch_to_frame("name值")或switch_to_frame("id值.转载 2021-02-15 12:53:18 · 1471 阅读 · 0 评论 -
selenium 定位下拉选择框元素
非 select 下拉框网上的教程大同小异,大多是 select 下拉框的最多,但我的不是 select 的,不能很好的解决,对于非 select 下拉框的解决办法,这篇文章完美解决了我的问题。我的问题是,需要从下拉框中选择元素,此元素还需要在下拉框激活后,下拉拉滚动条才能看到,直接定位,报错定位不到元素,解决办法:https://www.cnblogs.com/landhu/p/5010723.html# 激活下拉框browser.find_element_by_xpath("//di原创 2020-12-08 14:58:17 · 6414 阅读 · 7 评论 -
selenium 执行 javascript
.execute_script(javaspript)执行打开一个指定 url 的新标签driver.execute_script('window.open("%s");' % href)原创 2020-01-27 14:16:40 · 274 阅读 · 0 评论 -
selenium cookie 登录
selenium.common.exceptions.InvalidArgumentException: Message: invalid argument: invalid ‘expiry’https://blog.youkuaiyun.com/qq_30600259/article/details/102673452cookies = driver.get_cookies()f1 = o...原创 2020-01-27 12:45:17 · 572 阅读 · 0 评论 -
selenium驱动,chrome,firfox
https://blog.youkuaiyun.com/whale_and/article/details/82455126chrome官网对应版本驱动:https://sites.google.com/a/chromium.org/chromedriver/firefox驱动下载:https://github.com/mozilla/geckodriver/releaseschrome驱动...转载 2019-04-17 22:58:57 · 177 阅读 · 0 评论 -
selenium 弹窗处理、历史记录、cookie处理
1.历史记录操作页面前进或后退driver.forward()driver.back()2.弹窗处理触发了某个事件,跳出弹窗,获取弹窗对象,关闭弹窗driver.forward.switch_to_alert()alert.dismiss()3.Cookie 处理获取 cookie,添加 cookiedriver.get(url)cookie...原创 2019-04-17 20:25:41 · 1172 阅读 · 0 评论 -
selenium 拖拽元素
了解更多关注微信公众号“木下学Python”吧~https://blog.youkuaiyun.com/u012605082/article/details/80911513element = driver.find_element_by_name("source")target = driver.find_element_by_name("target")from selenium.w...转载 2019-01-16 17:25:45 · 1116 阅读 · 0 评论 -
selenium 下拉滚动条
了解更多关注微信公众号“木下学Python”吧~1.browser.execute_script(javasprict)window.scrollTo(0,document.body.scrollHeight); #下拉引用 JavaScript;例如 滚动条下拉 为browser.execute_script('var q=document.documentElemen...原创 2019-01-16 17:24:57 · 1678 阅读 · 0 评论 -
Selenium请求url后的方法
了解更多关注微信公众号“木下学Python”吧~目录2..page_source()3..encode(xxx)4..decode(xxx)5..click() 与 Keys.RETURN()6..clear()7..save_screenshot('image_name.jpg')8..maximize_window()9..get_screensho...原创 2018-10-23 11:24:42 · 2458 阅读 · 0 评论 -
Selenium配置浏览器、模拟访问结构
文档:http://selenium-python.readthedocs.io/index.html1.用selenium了流氓模拟浏览器配置 首先要下载浏览器 没给我浏览器都有一个相应的exe文件,例如Firefox要下载一个geckodriver.exe,Chrome要下载一个chromedriver.exe, 并把他们保存到Python环境里面...原创 2018-08-26 22:45:16 · 267 阅读 · 0 评论 -
等待机制
1.隐式等待、显示等待显示等待:设置超时时间,在此时间内等待元素加载,元素加载完毕后马上继续执行;在此时间元素没加载完就抛出异常;常用方法,值对指定元素隐示等待:设置超时时间,超过每加载出来异常,加载出来马上继续执行,对全局,所有元素http://www.cnblogs.com/simple-free/p/8458361.html2.#实现等待需要用到下面...原创 2018-12-19 18:56:38 · 199 阅读 · 0 评论 -
Selenium 定位元素的方法,获取标签的内容
目录1.2.提取链接3..find_elements_by_class_name('dt,mb-4,line')1.driver.find_elements_by_xpath()提取了标签以后,要提取其中的文字 .text,不能在后面接着 .text ,要另起一行如下:types = route.find_element_by_xpath...原创 2018-12-19 19:21:43 · 2306 阅读 · 0 评论 -
selenium设置请求头,防止被识别
1.Chrome#添加请求头 option = webdriver.ChromeOptions() option.add_argument('User-Agent=Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.7\ ...原创 2018-12-21 11:47:52 · 1139 阅读 · 0 评论 -
selenium关闭浏览器close()与quit()
了解更多关注微信公众号“木下学Python”吧~close方法是,关闭当前窗口,这个当前,如何理解,就是driver实例操作的页面,叫当前。如果当前窗口只有一个tab,那么这个close方法就相当于关闭了浏览器。quit方法就是直接退出并关闭所有关联的tab窗口。所以,close方法一般关闭一个tab,quit方法才是我们认为的完全关闭浏览器方法...原创 2018-12-21 12:02:37 · 5145 阅读 · 0 评论 -
Selenium Firefox浏览器窗口切换
了解更多关注微信公众号“木下学Python”吧~from selenium import webdriverbrowser=webdriver.Firefox()browser.maximize_window() # 窗口最大化browser.get('https://www.baidu.com') # 在当前浏览器中访问百度# 新开一个窗口,通过执行js来新开一个窗口...转载 2018-12-29 22:06:18 · 1037 阅读 · 0 评论 -
Selenium Chrome浏览器窗口切换
了解更多关注微信公众号“木下学Python”吧~from selenium import webdriverfrom selenium.webdriver.support.ui import WebDriverWaitimport timebrowser = webdriver.Chrome()browser.set_window_size(900, 900) # 根据桌...原创 2018-12-29 22:09:06 · 3268 阅读 · 1 评论 -
Selenium加快爬取加载速度,控制图片加载,控制css加载,控制JavaScript动态加载
了解更多关注微信公众号“木下学Python”吧~1.加快Selenium爬取速度 控制css加载--- 抓取过程仅仅抓取页面内容,CSS样式文件是用来控制页面外观和元素房子位置的,对内容并没有影响,可以限制 网页加载CSS,从而减少抓取时间,代码如下: from selenium import webdriver ...原创 2018-10-23 10:46:46 · 7766 阅读 · 1 评论