zzzain46
V2EX  ›  程序员

Linux 发送请求 ip 被 ban

By zzzain46 at 2020 年 10 月 27 日 · 3392 次点击

一个小脚本,定时登录校园网完成签到任务(脚本每天定时运行 3 次就行了,也不算高频),UA 使用 fake_useragent, 还是依旧被识别是非人类操作然后 ip 被 ban 了。在本月护网运动之前脚本一直正常运行好几个月,甚至不加 ua 都没问题。 发 post 请求的时候用的 cookie 是使用 selenium 模拟登陆从浏览器中获取的。很好奇是通过什么特征被检测到的,不知道还有哪些伪装可以做,避免被检测?

更换 ip 应该也没啥用,因为换了台云服务器来跑,跑一下就被 banip 了,所以很迷惑。

第 1 条附言  ·  2020 年 10 月 28 日
目测是 ip 问题了,用学校当地的 ip,高频跑同一个脚本,都不会有问题。
脚本需要在凌晨运行,又没有稳定的校园网环境,害。棘手。
14 条回复  •  2020-10-28 10:06:42 +08:00
Gloomyer
   1
Gloomyer  
   2020 年 10 月 27 日
selenium 要做一定的伪装 服务器可以拿到一些特征信息
opengps
   2
opengps  
   2020 年 10 月 27 日 via Android   ❤️ 1
不改 ua 的爬虫,就跟兔子用胡萝卜当诱饵钓鱼似的🤣
zzzain46
   3
zzzain46  
OP
   2020 年 10 月 27 日
哈哈哈哈不过我感觉也不是通过 UA 来检测的
hellos
   4
hellos  
   2020 年 10 月 27 日
“发 post 请求的时候用的 cookie 是使用 selenium 模拟登陆从浏览器中获取的。”
所以,你是通过 python 或其他语言直接发的包?那这样识别起来太容易了
Sunben
   5
Sunben  
   2020 年 10 月 27 日
我猜原因就是你用的是云服务器,每隔一个周期,后台把 i 所有访问者 ip 查一下,哦,原来是阿里云、腾讯云的机子,ban 了。
Sunben
   6
Sunben  
   2020 年 10 月 27 日
@Sunben 所以你用外国 vps 试试
fansangg
   7
fansangg  
   2020 年 10 月 27 日
那就跑之前拉一批免费的代理,然后循环一波
misaka19000
   8
misaka19000  
   2020 年 10 月 27 日
把签到时间点随机一下,别太固定了
zzzain46
   9
zzzain46  
OP
   2020 年 10 月 28 日 via iPhone
@hellos 对的,主要是考虑到学校里的系统都是外包做的,也没想到会被检测,还是地低估了哈哈哈
zzzain46
   10
zzzain46  
OP
   2020 年 10 月 28 日 via iPhone
@misaka19000
@Sunben 试了香港的,也不太行。但是用我们学校当地的 IP 就很稳。
hellos
   11
hellos  
   2020 年 10 月 28 日 via Android
@zzzain46 完全用 selenium 试试?
zzzain46
   12
zzzain46  
OP
   2020 年 10 月 28 日 via iPhone
@Sunben 目前手头没有外国的 vps
zzzain46
   13
zzzain46  
OP
   2020 年 10 月 28 日 via iPhone
@hellos 完全用 selenium 有点烦哈哈哈,因为要模拟的步骤太多了。
zarte
   14
zarte  
   2020 年 10 月 28 日
用自己电脑试,先排除 ip 问题,然后再查 cookie,ua,一般外包的不会太严。
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
© 2026 V2EX · 33ms · 3.9.8.5