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

在linux上面用drissionpage自动化遇到反爬?

目录

      • 一、反爬内容
        • 1、案例1
        • 2、案例2
      • 二、后来发现的问题解决

一、反爬内容

1、案例1
  • 反爬的响应文本返回如下:
  • 爬虫均能精准识别,测试链接:https://ziyuan.baidu.com/crawltools/index)
  • 非正常爬虫访问时:返回的压缩报文内容无法直接识别,可一定程度上保护站点信息安全;(伪装成爬虫的恶意请求、非爬虫服务器的SEO检测工具等)
  • 注:用户浏览器和爬虫看到的页面完全一致,如果您有顾虑,也可以进入网站后台=>网站管理=>站点信息=>关闭网站加速功能
    在这里插入图片描述
  • 用requests请求也是上面的响应内容返回
    from curl_cffi import requests as curl_requestsres = curl_requests.get("http://hanxbio.com/cpgx",  timeout=30, impersonate="chrome124")
    print(res.text)
    
  • 但是linux机器上自动化也是,难道自动化被反爬了?(windows上面是正常的)
    from DrissionPage import ChromiumPage, ChromiumOptions, WebPage
    co = ChromiumOptions().set_paths(browser_path="/data/code/spiderprj/src/crawlsall/DrugMonitor/cancel_fixed")
    co.headless(True)  # 设置无头加载  无头模式是一种在浏览器没有界面的情况下运行的模式,它可以提高浏览器的性能和加载速
    # co.incognito(True)  # 无痕隐身模式打开的话,不会记住你的网站账号密码的
    co.set_argument('--no-sandbox')  # 禁用沙箱 禁用沙箱可以避免浏览器在加载页面时进行安全检查,从而提高加载速度 默认情况下,所有Chrome 用户都启用了隐私沙盒选项  https://zhuanlan.zhihu.com/p/475639754
    co.set_argument("--disable-gpu")  # 禁用GPU加速可以避免浏览器在加载页面时使用过多的计算资源,从而提高加载速度
    co.set_user_agent(user_agent='Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36')  # 设置ua
    # co.set_proxy('http://127.0.0.1:10109')
    co.set_local_port(9211)
    page = ChromiumPage(co)
    page.get("http://hanxbio.com/cpgx")
    print(page.html)
    print(page.ele('x://div[@id="txt_con_243_39"]//table').html)
    
2、案例2
  • This page isn’t working , 同样是代理问题
    在这里插入图片描述
    在这里插入图片描述

二、后来发现的问题解决

  • 自动化问题解决方案:linux机器我设置的那个代理有问题,挂了co.set_proxy('http://127.0.0.1:10109')代理则会返回如下内容,去掉那个代理ip则正常返回
    在这里插入图片描述
  • requests解决方案,找到有数据的具体的接口api请求
    from curl_cffi import requests as curl_requestsres = curl_requests.get("https://nwzimg.wezhan.net/pubsf/18028/18028944/cdn-static-pages/pages/pc/170828_zh-cn.html.Body.js?version=20240723111847",  timeout=30, impersonate="chrome124")
    print(res.text)
    
http://www.lryc.cn/news/406797.html

相关文章:

  • vue3大事件管理系统 === 首页 layout 文章分类页面 -
  • 堆的基本实现
  • Ubuntu上编译多个版本的frida
  • 概率论三大分布
  • Spring系统学习-基于XML的声明式事务
  • iOS中的MVVM设计模式
  • ES中的数据类型学习之ARRAY
  • vue网络请求
  • 几何光学基本原理——费马原理和射线方程
  • OpenCV车牌识别技术详解
  • 解决llama_index中使用Ollama出现timed out 问题
  • Python爬虫技术 第14节 HTML结构解析
  • 【vue3|第18期】Vue-Router路由的三种传参方式
  • ElasticSearch(六)— 全文检索
  • Oracle核心进程详解并kill验证
  • 【BUG】已解决:SyntaxError:positional argument follows keyword argument
  • 怎样在 Nginx 中配置基于请求客户端 Wi-Fi 连接状态的访问控制?
  • 逆向案例二十九——某品威客登录,请求头参数加密,简单webpack
  • 河道高效治理新策略:视频AI智能监控如何助力河污防治
  • [React]如何提高大数据量场景下的Table性能?
  • 基于Vision Transformer的mini_ImageNet图片分类实战
  • JS中map()使用记录
  • JavaWeb学习——请求响应、分层解耦
  • Vue中!.和?.是什么意思
  • 秋招突击——7/22——复习{堆——前K个高频元素}——新作{回溯——单次搜索、分割回文串。链表——环形链表II,合并两个有序链表}
  • android13禁用某个usb设备
  • tmux相关命令
  • 初创小程序公司怎么选服务器合作商
  • 基于微信小程序+SpringBoot+Vue的自习室选座与门禁系统(带1w+文档)
  • 【Linux】进程IO|重定向|缓冲区|dup2|dup|用户级缓冲区|模拟缓冲区