位置: IT常识 - 正文

undetected_chromedriver的使用(undetected_chromedriver下载)

编辑:rootadmin
undetected_chromedriver的使用

推荐整理分享undetected_chromedriver的使用(undetected_chromedriver下载),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:undetected_chromedriver 依赖包下载,undetected_chromedriver 连接游览器,undetected_chromedriver比较耗内存吗,undetected_chromedriver比较耗内存吗,undetected_chromedriver 依赖包下载,undetected_chromedriver功能,undetected_chromedriver 详解,undetected_chromedriver 详解,内容如对您有帮助,希望把文章链接给更多的朋友!

undetected_chromedriver的使用(undetected_chromedriver下载)

undetected_chromedriver是专门针对浏览器识别做出来的拓展

直接使用undetected_chromedriver第三方库

if __name__ == '__main__':from selenium import webdriverfrom selenium.webdriver.common.by import Byfrom selenium.webdriver.support.ui import WebDriverWaitfrom selenium.webdriver.support import expected_conditionsimport undetected_chromedriver.v2 as ucchrome_options = uc.ChromeOptions()chrome_options.add_argument("--disable-extensions")chrome_options.add_argument("--disable-popup-blocking")chrome_options.add_argument("--profile-directory=Default")chrome_options.add_argument("--ignore-certificate-errors")chrome_options.add_argument("--disable-plugins-discovery")chrome_options.add_argument("--incognito")chrome_options.add_argument('--no-first-run')chrome_options.add_argument('--no-service-autorun')chrome_options.add_argument('--no-default-browser-check')chrome_options.add_argument('--password-store=basic')chrome_options.add_argument('--no-sandbox')driver = uc.Chrome(options=chrome_options, executable_path='./driver/chromedriver')driver.delete_all_cookies()driver.get("https://accounts.google.com/signin/v2/identifier?service=accountsettings&continue=https%3A%2F%2Fmyaccount.google.com%3Futm_source%3Daccount-marketing-page%26utm_medium%3Dgo-to-account-button&flowName=GlifWebSignIn&flowEntry=ServiceLogin")driver.find_element_by_xpath('//input[@type="email"]').send_keys(email)input = WebDriverWait(driver, 10).until(expected_conditions.element_to_be_clickable((By.XPATH, '//*[@id="identifierNext"]')))input.click()WebDriverWait(driver, 10).until(expected_conditions.element_to_be_clickable((By.XPATH, '//*[@id="password"]/div[1]/div/div[1]/input')))driver.find_element_by_xpath('//*[@id="password"]/div[1]/div/div[1]/input').send_keys(password)input = WebDriverWait(driver, 100).until(expected_conditions.element_to_be_clickable((By.XPATH, '//*[@id="passwordNext"]/div/button')))input.click()time.sleep(5)cookies = driver.get_cookies()cookies_arr = []for c in cookies: if c['domain'].endswith('.google.com'): cookies_arr.append(f'{c["name"]}={c["value"]}')driver.close()return "; ".join(cookies_arr)

使用seleniumwire的undetected_chromedriver拓展,好处是可以直接获取到浏览器的请求记录

from seleniumwire.undetected_chromedriver.v2 import Chrome, ChromeOptionsimport timeif __name__ == '__main__': options = {} chrome_options = ChromeOptions() chrome_options.add_argument("--disable-gpu") chrome_options.add_argument("--incognito") chrome_options.add_argument("--disable-dev-shm-usage") # chrome_options.add_argument("--headless") chrome_options.add_argument(f"--proxy-server=http://192.168.100.24:60021") chrome_options.add_argument("--disable-popup-blocking") chrome_options.add_argument("--profile-directory=Default") chrome_options.add_argument("--ignore-certificate-errors") chrome_options.add_argument("--disable-plugins-discovery") chrome_options.add_argument('--no-first-run') chrome_options.add_argument('--no-service-autorun') chrome_options.add_argument('--no-default-browser-check') chrome_options.add_argument('--password-store=basic') chrome_options.add_argument('--no-sandbox') browser = Chrome(seleniumwire_options=options, options=chrome_options,executable_path='C:\Program Files\Google\Chrome\Application\chromedriver.exe',version_main=101) browser.get('https://portal.thecourierguy.co.za/track?ref=TCG107468416T') time.sleep(15) print(browser.page_source) for request in browser.requests: if request.response: print(request.path) if 'shipments' in request.path: print(request.response.body) #获取内容为乱码可尝试用以下方法解码 #gzip.decompress(request.response.body).decode("utf-8")

其中version_main可以根据浏览器版本指定版本号 注意:       使用seleniumwire.undetected_chromedriver有一个大坑       输入executable_path不会生效,因为在webdriver的源码是单独引用的undetected_chromedriver 所以不会接收到传入的executable_path。 而在undetected_chromedriver源码中,如果没有传入path就会每次启动去官网重新下载一个新的驱动器,再编译成可执行的文存放在以下目录 解决办法:       在webdriver的源码中指定executable_path 这个带有前缀id的chromedriver是有执行权限的可执行程序啦 (直接使用官网下载的可能会没有权限,可以先直接运行一次,去到对应目录下面找到一个就可以永久使用啦<其他的可以删除>)

本文链接地址:https://www.jiuchutong.com/zhishi/288026.html 转载请保留说明!

上一篇:uniapp使用高德JS API(uniapp使用高德猎鹰服务)

下一篇:VS2022(Visual Studio)发布ASP.NET Core Web API应用到Web服务器(IIS)

  • 一般纳税人和小规模纳税人哪个合适
  • 税收的基本特征包括?
  • 有形动产租赁服务属于现代服务吗
  • 权益性支出与收益性支出区别
  • 以前年度成本多入了怎样调整
  • 信息技术服务企业研发费用加计扣除
  • 季度奖需要交税吗
  • 个体工商户销售自己使用过的物品
  • 供暖的配套费是不是开口费
  • 非独立核算的分公司如何报税
  • 本季度盈利可以当季弥补以前亏损吗
  • 贷款利息进项税额转出
  • 银行汇票的概念
  • 支付的各项税费包括个人所得税吗
  • 跨年度发票退回如何记账
  • 部队属于企事业单位吗
  • 加速折旧的例子
  • 种植保险包括
  • 免征增值税项目销售额含税吗
  • 单位发的奖金怎样交个税
  • 1697509300
  • linux的sed命令
  • win11开机黑屏进不去桌面
  • 华硕主板进入bios设置
  • 装修公司开专票要交几个点
  • php如何实现
  • 劳务报酬纳税计算器
  • 如何关闭win11系统
  • win7系统还原系统保护关闭
  • adblock规则编写
  • php保留两位小数的函数
  • php pulsar
  • 预付装修款账务处理
  • php图片大小设置
  • 其它收益和递延收益
  • 工费经费的计税依据要扣除含税部分吗
  • 前端传给后端
  • 调戏chatGPT(二)下围棋
  • zenity命令 显示图形框
  • php之间传递数据
  • php判断ua
  • 红冲费用如何处理
  • 社保缴费基数是怎么确定的
  • 国有资产无偿划转的会计处理
  • python pdb模块
  • 已付款收到发票
  • 增值税发票的规范
  • 普通发票销货清单
  • 公司注销其他应收款怎么冲平
  • sql2000日志清理
  • 小规模交社保有人数限制吗
  • 解决mysql数据库异常断电
  • 固定资产的处理属于日常业务的处理
  • 代收资金清算过程
  • 租赁设备如何做会计分录
  • 个税速算扣除数2023
  • 纳税评估补缴的增值税影响所得税吗
  • 出库单上面的价格是什么价格
  • 用友为什么引入不了账套
  • 原始凭证丢了判刑吗
  • 增值税科目设置成多栏式还是三栏式好
  • 怎样用windows
  • Windows Server 2003网络负载均衡如何实现
  • linux中安装vim命令
  • linux安装视频教程
  • ubuntu系统自带的截图工具
  • 在windows7中,下列叙述中错误的是
  • linux中文件权限读写执行的三种标志符号依次是
  • html5字体闪烁
  • div display inline-block
  • 可以生成选区的方式是使用
  • javascript学习指南
  • 浏览器环境下的事件循环
  • js闭包的使用
  • python怎么写函数
  • 即征即退什么时候确认收入
  • 电子税务局新户报道怎么弄
  • 出租车发票密码区被撕掉了能报销吗?
  • 不明身份人员法律定义?
  • 豪车消费税的征税范围
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设