使用R爬取亚马逊商品评论时爬取失败,疑似IP被封求助
问题分析与解决方案
你的情况大概率是触发了亚马逊的反爬机制,不一定是IP被永久封禁,更可能是临时限制了非浏览器请求——亚马逊会识别非标准请求头,频繁请求也会触发拦截。
具体解决办法:
- 添加浏览器请求头:
read_html默认的请求头会被识别为爬虫,手动设置User-Agent模拟真实浏览器访问。修改代码中read_html部分:
# 先加载httr包 pacman::p_load(httr) # 模拟Chrome浏览器请求头 headers <- c( "User-Agent" = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36" ) doc <- read_html(url, httr::add_headers(.headers = headers))
控制请求频率:短时间内多次请求会触发亚马逊的频率限制,每次请求后添加延迟,比如用
Sys.sleep(5)让程序暂停5秒再继续操作。排查IP状态:如果添加请求头和延迟后仍无法访问,可能是IP被临时限制,可以切换网络(比如手机热点)测试,确认是否是IP问题。
另外,亚马逊评论页面结构更复杂、反爬规则更严格,后续爬取评论时建议同样遵循以上规则,避免再次被拦截。
内容的提问来源于stack exchange,提问作者Anisa B.
相关产品推荐
相关产品推荐

