一种新的爬虫网络解锁器

news/2024/7/19 8:46:32 标签: 网络, 爬虫

事出原由

遇到一个需要采集境外电商的需求,相比国内各种层出不穷的反爬手段,境外产品更注重于用户行为和指纹上。

所以笔者在想是否有类似于指纹浏览器的环境可以提供给爬虫采集器使用。

经过检索,找到了一种名为爬虫网络解锁器的新兴产品。


爬虫网络解锁器

所谓的网络解锁器,是指能够突破网络限制,让用户能够访问被封锁网站的工具。

而在爬虫领域,爬虫网络解锁器(本质上也属于一种代理通道)可以帮助爬虫程序访问一些具有反爬限制或被封锁的网站或数据源。

有时候逆向分析过于繁琐,人力开发成本过高,通过网络解锁器不必为了反爬限制增加人力和工时消耗,它在后台完全模拟真实用户操作,让你能获得完美畅通的响应。当然这并不代表所有的反爬都能绕过,相对于一些基于Cookie、指纹校验、行为记录 的网站会有更好的收益。

在这里插入图片描述

不过需要注意的是,使用不当的网络解锁器可能会违反相关法律法规或者用户协议。

爬虫使用网络解锁器时则需要格外小心,以免触犯相关规定导致法律风险。


解锁服务提供商

笔者大概找了一些厂商,没有全部进行测试,后续等空闲时间对此类解锁器进行测评。具体尝试了行业内拥有类似产品的三家供应商,包括以色列的亮数据。

有一些网络解锁器服务提供商,它们提供付费或者免费的解锁服务。需要注意的是,有些解锁服务提供商在提供解锁服务的同时,可能会进行数据监测和收集,这可能涉及到您的数据隐私问题,因此在选择解锁服务提供商时需要格外慎重。

比较下来,觉得 BrightData的产品亮网络解锁器好用,以下为示例。

在这里插入图片描述


如何使用

1、访问官网:点击 注册账号, 建议使用企业邮箱注册,因为可以免费试用。

2、注册需要验证,登录后,可转到后台控制面板。

3、选择Proxies & Scraping Infrastructure
在这里插入图片描述

4、创建通道,选择解锁器

在这里插入图片描述
5、查看访问参数

参数中有用户名和密码,可使用右侧的curl命令进行测试。
在这里插入图片描述

在 Check out code and integration examples 中,可选择适合自己开发语言的demo。

6、用python语言进行测试。

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import requests

ProxyHandler = {
    'http': '用户名:密码@主机',
    'https': '用户名:密码@主机'
}

print(requests.get('http://lumtest.com/myip.json',proxies=ProxyHandler).text)

先运行测试代码查看自己的代理是否使用成功,当返回的IP不再是本机IP则说明使用成功了。

在这里插入图片描述


测试案例 Amazn

Amazn具有验证码、Cookie跟踪,IP访问频率限制,访问轨迹跟踪等反爬措施。

正常访问 https://www.amazon.com/dp/B00O4VR7B6?th=1&psc=1直接进入验证界面。

在这里插入图片描述
当我们用普通代理访问时会被防火墙检测到,并触发验证码。同时想要用程序大量访问接口时,则需要拿到经过人机验证后的参数。如果做逆向的话,需要开发时间和人力成本。此时不如采用网络解锁器来进行访问。

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import requests

ProxyHandler = {
    'http': '',
    'https': ''}

headers = {
    "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36"
}

url = 'https://www.amazon.com/dp/B00O4VR7B6?th=1&psc=1'
print(requests.get(url,proxies=ProxyHandler,verify=False,headers=headers).text)

所以通过解锁器访问Amazn可以不考虑风控,用其动态住宅代理网络绕过行为校验,解锁Header、指纹等。


不过需要注意的是解锁器并不能通用于所有站点,由于一些网站的特殊性和代理行为的安全性,动态住宅都有风控,也就是说不管是谁来用这个动态住宅,都必须通过代理商的风控,很多不合法不合规的用例是不允许的。

查看了以下亮网络解锁器能用的网站,超过2千个,涵盖了各领域流行平台。

所以使用之前先联系厂商咨询是否可用于自己的需求。我本来是要测试台湾的Dcard网站,结果显示无法使用亮数据的解锁器,一经询问,技术支持告知凡是没有搜录到可使用这个产品的网站,需要先提交给他们,等待纳入后即可使用。
在这里插入图片描述

更多内容可到官网查看。

测试案例二 Yandex

Yandex是俄罗斯的一款搜索引擎,也有人把它比作俄罗斯的谷歌。其反爬虫措施也是基于多层的cookie参数和人机验证。境外的搜索引擎大都使用了相同的反爬措施,所以不太建议逆向分析。

针对于这些特种站点,Bright data亮数据提出了一种专用于搜索引擎爬虫SERP代理类型。

在这里插入图片描述
Python代码 demo:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import requests
from lxml import etree

ProxySerp = {
    'http': 'your proxy info',
    'https': 'your proxy info'
}

headers = {
    "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36"
}

url = 'https://yandex.com/search/?text=lx'
html = requests.get(url,proxies=ProxySerp,verify=False,headers=headers).text
print(html)
e = etree.HTML(html)
print(e.xpath('//title/text()'))
print(e.xpath('//span[@class="OrganicTitleContentSpan organic__title"]//text()'))

Serp除了很适用于Yandex外,还支持Google、GoogleMap、Bing、DuckDuckGo等互联网搜索引擎。

GoogleMap搜索示例:

在这里插入图片描述

经笔者测试后,Serp采集效果较为稳定,有境外搜索引擎采集需求的可以前往官网试用。

地址:https://luminati-china.biz/cp/zones/serp_playground


经验总结

使用网络解锁器并发采集时先了解相关法律法规和技术实现,以及仔细评估需要访问的网站的实际情况,谨慎决策。

本文给大家分享的内容到这里收尾了,后续会通过更多的案例来测试 Bright Data亮数据 的其它产品。


http://www.niftyadmin.cn/n/354784.html

相关文章

js刷题巩固之路

1. 两数之和 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。 你可以…

混沌演练实践(二)-支付加挂链路演练 | 京东云技术团队

1. 背景 当前微服务架构下,各个服务间依赖高,调用关系复杂,业务场景很少可以通过一个系统来实现,常见的业务场景实现基本涉及多个上下游系统,要保证整体链路的稳定性,需要尽量减少系统之间的耦合性&#x…

动图怎么拆分成静图?简单快速分解gif的方法

怎么把gif动图变成静态图片?常见的gif动图画面生动丰富,是由一帧一帧静态的图片合成的,当我们想要把gif动图拆分成多张图片的时候要怎么操作呢?有没有什么简单方便的工具吗? 一、有没有简单方便的gif工具呢&#xff1…

2023年了PWA开发模式在国内还有发展空间吗?

随着国内外技术及生态的迅猛发展,应用程序的开发模式也在不断演进。在过去,就我及身边同事的经验而言,会常常需要在不同的平台(如Android、iOS)编写不同的代码,导致开发成本和维护困难的问题。 然而&#…

python---变量(2)

此处,首次使用“”对a进行设置值,也就是对a的初始化。 后续位置对a使用“”,实际上是对a赋值。 因此两行代码得到的结果显然是不同的! 变量的种类 1.整数-int-根据数据大小自动扩容 python中的变量类型不需要显示声明&#…

Prompt Engineering | 推断prompt(一句prompt解锁多个nlp任务)

😄 大模型大一统的时代来临了,各nlp任务不需要单独准备一份带标签的数据进行有监督训练,而是只需要一句prompt便可以解决各类nlp任务,如情感分类、情感类型识别、实体抽取等,极大地减轻了工作量! ⭐ 比如&…

ChatGPT-4 vs Bard:对于 PostgreSQL 开发者来说有什么区别?

在人工智能 (AI) 进步的快节奏世界中,开发人员正在寻找最高效和突破性的解决方案来加快和提高他们的工作质量。对于 PostgreSQL 开发人员来说,选择理想的 AI 支持的工具以最专业的方式解决他们的查询至关重要。 近年来,人工智能工具的普及率…

HACKABLE: III

文章目录 HACKABLE: III实战演练一、前期准备1、相关信息 二、信息收集1、端口扫描2、访问网站3、查看网站源码4、扫描目录5、访问网址6、查看并下载7、访问网站8、查看文件9、解密10、访问网站11、访问网站12、查看文件13、解密14、访问网站15、访问网站16、下载图片17、隐写1…