selenium设置user-agent以及对于是否是浏览器内核进行反爬

(Session info: chrome=75.0.3770.90),不同版本方法可能会有些不同

推荐查资料网站必应可以避开一堆广告

一.user-agent设置

from selenium import webdriver
# 进入浏览器设置
options = webdriver.ChromeOptions()
# 更换头部
options.add_argument('user-agent=ywy')

browser = webdriver.Chrome(options=options)
url = "https://httpbin.org/get?"

browser.get(url)
print(browser.page_source)
browser.close()

二.浏览器内核

只要你执行navigator.webdriver返回值是true就是浏览器内核访问

如果不是返回值是undefined

selenium为了解决这个需进行js 注入

from selenium import webdriver
browser = webdriver.Chrome()
script='''Object.defineProperties(navigator, {webdriver:{get:()=>undefined}})'''
browser.execute_script(script)

原文地址:https://www.cnblogs.com/pythonywy/p/11956989.html

时间: 2024-11-17 19:03:42

selenium设置user-agent以及对于是否是浏览器内核进行反爬的相关文章

爬虫04 /asyncio、selenium\规避检测、动作链、无头浏览器

目录 4.asyncio.selenium\规避检测.动作链.无头浏览器 1. 协程asyncio 2. aiohttp多任务异步爬虫 3. selenium的使用 4. 动作链 5. 12306模拟登录分析 6. selenium规避风险 7. 无头浏览器 总结: 4.asyncio.selenium\规避检测.动作链.无头浏览器 1. 协程asyncio 协程基础 特殊的函数 就是async关键字修饰的一个函数的定义 特殊之处: 特殊函数被调用后会返回一个协程对象 特殊函数调用后内部的程序语

使用firefoxprofile,selenium设置firefox,初始化firefox

1.什么是firefoxprofile       简单的来说就是个人定制,比如你设置自己访问主页,禁用加载图片这些个性化的设置,都可以保存到一个文件夹下,就是firefoxprofile,下次使用时候,加载该firefoxprofile,就可以让自己火狐浏览器设置跟之前配置一样 2.为什么selenium要用firefoxprofile      我们自动化测试的时候,有时不需要图片加载出来,提高浏览器加载速度,从而提高脚本的执行速度.另外在一些网络比较差的环境下,禁用css.图片等加载可以提

phantomjs和selenium设置proxy、headers

设置ip 方法1: service_args = [ '--proxy=%s' % ip_html, # 代理 IP:prot (eg:192.168.0.28:808) '--proxy-type=http', # 代理类型:http/https '--load-images=no', # 关闭图片加载(可选) '--disk-cache=yes', # 开启缓存(可选) '--ignore-ssl-errors=true' # 忽略https错误(可选) ] driver = webdriv

selenium 设置元素等待

webdriver 有2种等待方式:显式等待和隐式等待 显式等待 定义:使webdriver等待某个条件成立时继续执行,否则达到最大时长时抛出异常 WebdriverWait类是由WebDriver 提供的等待方法.在设置时间内,默认每隔一段时间检测一次当前页面元素是否存在,如果超过设置时间检测不到则会抛出异常. 格式如下: WebDriverWait(driver,timeout,poll_frequency = 0.5,ignored_exceptions = None) driver:浏览

selenium 设置等待时间

有些网站打开地址或者进行操作后,页面需要加载几秒钟,或者等待某一元素加载完成后再继续下一步操作,这里就需要进行设置等待时间 导入time模块,time模块是python自带的,无需下载 一.设置等待时间有三种方法: 1.强制等待 time.sleep(time)     # 强制等待3秒后,进行下一步操作,也可以是小数,单位为秒 缺点:不能准确把握需要等待的时间(有时候操作未完成,等待就结束了,导致报错:有时候操作已经完成了,但时间还没到,浪费时间),如果再用例中大量使用,会浪费不必要的等待时间

设置Sql Agent运行Job时的执行账户

相信使用过Sql Server的人都应该知道,使用Sql Agent可以建立一些自动化Job来帮我们周期性地执行一些任务,其中执行SSIS包就是其中一个任务.而在SSIS包中有时候会去做读取文件等一些本地化操作,如果执行Sql Agent任务的执行账户权限不够有可能造成SSIS包无法读取文件执行失败.所以我们有时候需要去指定用哪一个账户去执行Sql Agent的任务. 1.要指定Sql Agent任务的执行账户首先要建立一个数据库凭证,如下图所示: 2.建立凭证时选择的标识(下图红色框指定的账户

Selenium设置Firefox启动

1.如果按照firefox的时候,不是选择默认路径,在Selenium中就无法打开Firefox浏览器,需要指定路径来实现 System.setProperty("webdriver.firefox.bin", "D:\\Program Files\\Mozilla Firefox\\firefox.exe"); driver = new FirefoxDriver();

Scrapy selenium 设置头部信息headers-------UA

1,PhantomJS from selenium.webdriver.common.desired_capabilities import DesiredCapabilities from selenium import webdriver dcap = dict(DesiredCapabilities.PHANTOMJS) dcap['phantomjs.page.settings.userAgent'] = 'Mozilla/5.0 (Windows NT 6.1; Win64; x64)

selenium 设置代理选项

import random proxy_list = [ '127.0.0.1:proxy:80', '127.0.0.2:proxy:80'] # proxy_list = [{'http': 'https://14.29.47.90:3128'},] from selenium import webdriverchrome_options = webdriver.ChromeOptions()print('--proxy-server={0}'.format(random.choice(pr