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

制作公司网站的规划江苏九天建设有限公司网站

制作公司网站的规划,江苏九天建设有限公司网站,类似稿定设计的软件有哪些,网站建设收费标准报价一、背景介绍:你被自动化检测拒之门外了吗? 在使用 Selenium 或 Playwright 等浏览器自动化工具爬取数据时,经常会遇到「被检测」问题,尤其像 Amazon 这样反爬策略严密的网站。常见的检测机制之一就是检查 JavaScript 中的 navig…

爬虫代理


一、背景介绍:你被自动化检测拒之门外了吗?

在使用 Selenium 或 Playwright 等浏览器自动化工具爬取数据时,经常会遇到「被检测」问题,尤其像 Amazon 这样反爬策略严密的网站。常见的检测机制之一就是检查 JavaScript 中的 navigator.webdriver 属性:

console.log(navigator.webdriver); // true:表明是自动化工具

因此,本文将带你深入了解如何在浏览器中底层修改该属性,并结合代理、Cookie、User-Agent 技术,实现一个能顺利爬取 Amazon 网站商品信息的反检测爬虫。


二、环境准备

1. 安装依赖

pip install undetected-chromedriver selenium requests

我们使用 undetected-chromedriver 代替原生 Selenium 驱动,内置多种反检测机制,更适合应对大型网站的反爬。

2. 爬虫代理信息(请替换为你的真实账户信息)

# 配置代理 亿牛云爬虫代理 www.16yun.cn
proxy_host = "proxy.16yun.cn"
proxy_port = "8010"
proxy_user = "16YUN"
proxy_pass = "16IP"

三、核心步骤

✅ 第一步:配置无痕浏览器并隐藏 webdriver

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
import timedef create_stealth_driver(proxy_host, proxy_port, proxy_user, proxy_pass, user_agent, cookies):options = Options()options.add_argument(f"user-agent={user_agent}")options.add_argument("--disable-blink-features=AutomationControlled")# 配置爬虫代理options.add_argument(f'--proxy-server=http://{proxy_user}:{proxy_pass}@{proxy_host}:{proxy_port}')# 启动无头浏览器(也可以关闭无头方便调试)# options.add_argument('--headless')# 创建驱动import undetected_chromedriver as ucdriver = uc.Chrome(options=options)# 修改 webdriver 属性(核心)driver.execute_script("Object.defineProperty(navigator, 'webdriver', {get: () => undefined})")# 设置 cookiedriver.get("https://www.amazon.com")for cookie in cookies:driver.add_cookie(cookie)return driver

✅ 第二步:模拟搜索关键词并采集信息

def scrape_amazon(keyword):user_agent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"cookies = []  # 可以从浏览器复制一组,也可通过登录获取driver = create_stealth_driver(proxy_host, proxy_port, proxy_user, proxy_pass, user_agent, cookies)driver.get(f"https://www.amazon.com/s?k={keyword}")time.sleep(3)products = driver.find_elements(By.XPATH, "//div[@data-component-type='s-search-result']")for product in products[:10]:  # 只取前10条数据举例try:title = product.find_element(By.TAG_NAME, "h2").textprice_whole = product.find_element(By.CLASS_NAME, "a-price-whole").textprice_frac = product.find_element(By.CLASS_NAME, "a-price-fraction").textprice = f"{price_whole}.{price_frac}"reviews = product.find_element(By.XPATH, ".//span[@class='a-size-base']").textprint(f"名称: {title}")print(f"价格: ${price}")print(f"评论: {reviews}")print("=" * 30)except Exception as e:continuedriver.quit()

四、完整代码汇总

# 请整合以上两个函数并在此调用
if __name__ == "__main__":keyword = "wireless earbuds"scrape_amazon(keyword)

五、常见错误分析

错误提示原因解决方案
selenium.common.exceptions.WebDriverException驱动不匹配使用 undetected-chromedriver 自动管理版本
网页元素找不到页面尚未完全加载time.sleep() 或 WebDriverWait
显示“访问过于频繁”IP 被封更换代理 IP,使用优质高匿代理
无法设置 Cookie页面未打开或未加载完成先访问目标页面,再添加 Cookie

六、总结与提升

本文以 Amazon 网站为例,讲解了如何通过底层 JS 技巧对抗自动化检测,关键点在于:

  • 使用 undetected-chromedriver 替代传统 Selenium;
  • 修改 navigator.webdriver 属性隐藏自动化痕迹;
  • 配合代理、User-Agent 和 Cookie 构建可信环境;
  • 页面加载等待 + XPath 精准提取实现结构化采集。
http://www.dtcms.com/a/505700.html

相关文章:

  • 建设企业网站官网下载中心湖北网站seo设计
  • 华宁网站建设上海软件开发公司排名
  • 微网站案例与通信工程专业做项目的网站
  • 宁波网站推广方式优化设计官方电子版
  • 网站搭建中企动力最行gl账号注册网站
  • 旅游电商网站开发wordpress文章字数
  • 东莞乐从网站建设四川省城市建设培训中心 网站
  • 医院预约挂号系统网站开发方案datadata.asp 网站 破解
  • 綦江网站建设设计师网址导航 优设
  • 长景园林这个网站谁做的wordpress tag 优化
  • phpwind 企业网站七初SEO网站建设
  • 长沙建站找有为太极就治就wordpress 历史版本
  • 写网站建设的论文网上服务平台官网
  • 外贸联系网站php源码网站修改
  • 淘宝不允许 网站建设太原头条新闻
  • 做网站时空间的选择什么网站可以做任务领赏金
  • 饮料网站模板建站行业导航网站
  • 网站导航如何做半透明渐变小程序店铺怎么弄
  • 网站收录查询入口班级网站怎么做ppt模板
  • 济南网站建设维护公司怎么用sharepoint做网站
  • win2008的iis7建网站流程佛山智能模板建站
  • 浦口区教育局网站集约化建设重庆的网站建设
  • 电商会学着做网站呢企业+网站+wordpress
  • html怎么做移动端网站超详细的wordpress主题
  • 石家庄网站建设专家福田专门做网站推广公司
  • 怎么做网站啊培训网站建设报价单
  • 网站的推广方式组合电子商务网站建设实践报告摘要
  • 门户网站建设预算表wordpress文章末尾添加版权声明
  • 建立网站官网网站开发语言及数据库
  • 温州市建设小学大南网站网站建设软著