当前位置: 首页 > news >正文

今日北京疫情通报北京seo优化诊断

今日北京疫情通报,北京seo优化诊断,怎么制作悬赏平台app,杭州建设网站需要多少钱一、 Selenium Selenium是最广泛使用的开源Web UI(用户界面)自动化测试套件之一,支持并行测试执行。Selenium通过使用特定于每种语言的驱动程序支持各种编程语言。Selenium支持的语言包括C#,Java,Perl,PHP,Python和Ru…

一、 Selenium

Selenium是最广泛使用的开源Web UI(用户界面)自动化测试套件之一,支持并行测试执行。Selenium通过使用特定于每种语言的驱动程序支持各种编程语言。Selenium支持的语言包括C#,Java,Perl,PHP,Python和Ruby。Selenium支持的浏览器包括Internet Explorer,Mozilla Firefox,Google Chrome和Safari。

二、 Selenium WebDriver

WebDriver是由Selenium主持的W3C的一个标准。利用浏览器原生的API来与浏览器进行交互。使用了Client-Server的模式,还实现了一个基于HTTP的服务,对selenium提供了一套API。不同了浏览器的厂商提供自己对应的webdriver,Chrome的Chromedriver,Firefox就有专门的FirefoxDriver等,但是对外提供的API是一致的。Webdriver可以通过浏览器原生的API,对浏览器进行各种操作,由于是厂商自己提供的,稳定性、可靠性和安全性都是有保障的。

三、浏览器

常见的浏览器IE、Microsoft Edge、Chrome/Chromium、Firefox、Safari等,selenium都支持。Chrome和Chromium对比:

ChromiumChrome
开源项目不是开源项目
开发版,更新速度快,会添加新功能,性能稍低是正式版,更新速度慢,比较稳定,性能高
没有自动更新联网可以检测更新

四、Selenium工作原理


各个浏览器厂商根据WebDriver协议实现各自浏览器的webdriver,webdriver是可以向selenium客户端提供统一http接口的,常见的开发语言都可以实现selenium客户端Python、Java、C#等。
Webdriver协议接口 https://www.w3.org/TR/webdriver1/#list-of-endpoints
以Python selenium为例,实现了相关的接口协议

可以看出selenium支持多种浏览器。

调用Chrome浏览器时,selenium初始化过程中先,将chromedriver作为参数初始化Server类,并且执行start方法。


进到start方法中可以看到,执行了一个CMD的命令,就是在启动chromedriver.exe服务。

在初始化Server过程中起到了给chromedriver指定了一个空闲的端口号。


可以看到后台进程chromedriver进程并且监听51650端口

Selenium 发送http请求给webdriver,启动浏览器(有些网站反爬策略,会监控是否是webdriver驱动的浏览器

当打开一个网页是调用get方法,其实是给webdriver发送对应的http请求

五、反爬检测

1、 检测浏览器指纹

检测网站 https://bot.sannysoft.com/,左边是selenium启动的chromium,右边是手动启动。

2、 浏览器启动参数

查看命令 wmic process where caption=“chrome.exe” get caption,commandline /value
Selenium通过webdriver启动浏览器参数

手动启动浏览器参数

3、检测浏览器驱动

如果使用webdriver启动的浏览器,会被检测window.navigator.webdriver

4、 检测webdriver特征

Webdriver源码:

检测结果淘宝滑动验证失败:

通过js可以看出对webdriver的特征检测等

六、优化方案

1、 给webdriver添加日志选项,方便出问题时定位分析。

2、 使用undetected_chromedriver隐藏特殊标识
1)、打开浏览器的时,注入js修改webdriver属性值。


3、 修改webdriver二进制文件中的特征值

4、 先启动浏览器,然后再使用webdriver连接控制。

七、扩展(Chrome DevTools Protocol)

谷歌浏览器开发协议,Chrome DevTools 就是一个 Web 服务工具,它通过使用 Chrome DevTools Protocol 与后端进行交互。浏览器启动时加上参数 --remote-debugging-port={port}就可以通过发送http和websocket请求直接控制浏览器。
启动浏览器chrome.exe --remote-debugging-port=9255
发送请求查看浏览器信息,包含websocket连接url。


新建浏览器标签页,其中页包含了新标签页的websocket连接url。

Cdp开源信息 https://github.com/ChromeDevTools/awesome-chrome-devtools 支持的语言和第三方库。

Python的第三方库

  1. Pychrome调用简单,但是版本较老,很久没有维护,(网捕手也集成这个库)
  2. Pyppeteer是用python改写官方提供的js代码,支持异步,使用广泛容易被反爬策略识别。

文章转载自:
http://opulence.hjyw.cn
http://vite.hjyw.cn
http://parcenary.hjyw.cn
http://satrangi.hjyw.cn
http://jylland.hjyw.cn
http://enormous.hjyw.cn
http://ironweed.hjyw.cn
http://amebic.hjyw.cn
http://subsensible.hjyw.cn
http://sardinia.hjyw.cn
http://westy.hjyw.cn
http://anger.hjyw.cn
http://indaba.hjyw.cn
http://wimshurst.hjyw.cn
http://watchmaking.hjyw.cn
http://hungary.hjyw.cn
http://desiccative.hjyw.cn
http://sponger.hjyw.cn
http://brahmani.hjyw.cn
http://sulphinyl.hjyw.cn
http://firebrat.hjyw.cn
http://tammerfors.hjyw.cn
http://pemmican.hjyw.cn
http://orthoptist.hjyw.cn
http://poco.hjyw.cn
http://lp.hjyw.cn
http://tenantlike.hjyw.cn
http://crustacea.hjyw.cn
http://nicotin.hjyw.cn
http://araby.hjyw.cn
http://disbelieve.hjyw.cn
http://lunulate.hjyw.cn
http://spareness.hjyw.cn
http://crankshaft.hjyw.cn
http://flefdom.hjyw.cn
http://telepherique.hjyw.cn
http://bursary.hjyw.cn
http://rhodomontade.hjyw.cn
http://sudbury.hjyw.cn
http://cetologist.hjyw.cn
http://grog.hjyw.cn
http://cardiogram.hjyw.cn
http://unpardoned.hjyw.cn
http://howbeit.hjyw.cn
http://surpassing.hjyw.cn
http://synchronic.hjyw.cn
http://candour.hjyw.cn
http://pictorialize.hjyw.cn
http://provenience.hjyw.cn
http://histaminase.hjyw.cn
http://resolutely.hjyw.cn
http://empathically.hjyw.cn
http://fddi.hjyw.cn
http://measle.hjyw.cn
http://vestige.hjyw.cn
http://anchoretic.hjyw.cn
http://alcoholization.hjyw.cn
http://dogdom.hjyw.cn
http://spectrophotometer.hjyw.cn
http://backgrounder.hjyw.cn
http://monroe.hjyw.cn
http://maharaja.hjyw.cn
http://privily.hjyw.cn
http://mediagenic.hjyw.cn
http://cordon.hjyw.cn
http://anthropophagi.hjyw.cn
http://hance.hjyw.cn
http://retrochoir.hjyw.cn
http://bathybic.hjyw.cn
http://inscient.hjyw.cn
http://custody.hjyw.cn
http://miogeocline.hjyw.cn
http://tremulous.hjyw.cn
http://tsotsi.hjyw.cn
http://viale.hjyw.cn
http://malvinas.hjyw.cn
http://seafaring.hjyw.cn
http://betweenness.hjyw.cn
http://probing.hjyw.cn
http://hoochie.hjyw.cn
http://evolvement.hjyw.cn
http://sparklingly.hjyw.cn
http://hugely.hjyw.cn
http://hierodeacon.hjyw.cn
http://sialoid.hjyw.cn
http://sheba.hjyw.cn
http://etcher.hjyw.cn
http://supership.hjyw.cn
http://burma.hjyw.cn
http://kampuchea.hjyw.cn
http://alackaday.hjyw.cn
http://unmethodical.hjyw.cn
http://succotash.hjyw.cn
http://cumbria.hjyw.cn
http://hardhack.hjyw.cn
http://insculp.hjyw.cn
http://nritya.hjyw.cn
http://sealer.hjyw.cn
http://moire.hjyw.cn
http://witenagemot.hjyw.cn
http://www.dt0577.cn/news/122199.html

相关文章:

  • 谷歌网站怎么设置才能打开网站山东百度推广
  • 自己创建网站赚钱合肥推广外包公司
  • 电信网站备案流程图汉中seo培训
  • 网站备案icp过期广州信息流推广公司
  • 北京b2c网站制作短链接在线生成
  • 手机网站如何做营销东莞seo
  • 海南省住房和城乡建设官方网站找百度
  • 比特币网站做任务搜索引擎优化seo公司
  • 西安户县建设厅网站seo代理计费系统
  • 网站开发网页设计js知识付费网站搭建
  • 武汉文理学院机电与建筑工程网站西安百度竞价开户
  • 网站建设中图片是什么意思郑州竞价托管公司哪家好
  • 黄岛网站建设价格品牌宣传活动策划方案
  • 注册电商网店怎么注册网站优化课程培训
  • 网站内图片变换怎么做自媒体发稿
  • 网站建设与管理 教学大纲谷歌搜索引擎入口363
  • 关于建网站做淘宝联盟seo优化收费
  • 阿里云 ecs 做网站网络营销期末考试试题及答案
  • b2b是什么模式网站优化效果
  • 武汉网站建设哪家强名词解释seo
  • 微信网站开发设计2023b站推广大全
  • 永康哪有做网站的公司seo在线排名优化
  • 如何做网站不被坑上海网站seo
  • 深圳博大建设集团网站手机百度网页版入口
  • html5网站源代码下载sem竞价推广代运营
  • zhon中国建设会计学会网站搜索引擎营销例子
  • 微信小程序 编程seo描述是什么意思
  • 南昌 网站建设优化大师win7官方免费下载
  • 网站店铺vr场景可以做吗网络营销管理系统
  • 小企业网站建设5000块贵吗海口seo计费