短时间连续访问新浪微博搜索页面致使“你的行为有些异常,请输入验证码:”解决方法
2013-04-12 19:40
363 查看
近期在做新浪微博的抓取,需要在短时间内对新浪微博搜索页面进行访问,可是如果程序在短时间内运行几次,新浪会认为你的行为存在异常,无法获取到正常返回的页面源码。分析原因:
各大网站都有自己的保护机制,如果发现存在进程短时间持续对网站服务器进行访问,它会认为该进程的行为有异常,许多黑客正是利用这种对网站的大规模并发访问,致使防护性较差的网站瘫痪。
为了解决“你的行为有些异常,请输入验证码:”这个问题,我尝试使用更换ip的方法。因为既然新浪已经将当前的IP地址认为是产生异常行为的地址,所以在短时间内不会对该IP地址解封(一般2-3天以后才会解封)。所以得使用其他的IP对微博页面进行爬取。
在实验室局域网内,ip地址是根据MAC地址固定分配。所以想要改成局域网内其他的ip地址,得需要知道局域网内有哪些ip地址可用。
将以上代码存放在文本中,修改后缀名为.bat,以管理员的身份运行,可以查看当前网络中其他主机的ip地址。
![](http://img.my.csdn.net/uploads/201304/12/1365766677_7567.jpg)
有了这些ip地址,再使用NBTSTAT -a 目的IP 得到目的IP的MAC地址。
![](http://img.my.csdn.net/uploads/201304/12/1365766693_6872.jpg)
修改本机的MAC地址为以上查询到的MAC地址,可以使用MAC地址修改器,或者直接打开网络和共享中心,打开本地连接的属性,配置,选择“高级”,选择网络地址,填写要修改的MAC地址。
![](http://img.my.csdn.net/uploads/201304/12/1365767108_4287.jpg)
不久,IP地址就会根据更改后的MAC地址重新分配,现在相当于两台主机共同分得网络流量使用,你可以使用这个IP重新运行程序,爬去新浪微博。
这都是在出现“你的行为有些异常,请输入验证码:”之后的解决方法。如果想避免出现这种情况,最好是在运行程序时,不要短时间内多次运行,最好间隔一定的时间运行一次。
本文为xyw_Eliot原创,转载请注明出处:http://blog.csdn.net/xyw_eliot/article/details/8791987
各大网站都有自己的保护机制,如果发现存在进程短时间持续对网站服务器进行访问,它会认为该进程的行为有异常,许多黑客正是利用这种对网站的大规模并发访问,致使防护性较差的网站瘫痪。
为了解决“你的行为有些异常,请输入验证码:”这个问题,我尝试使用更换ip的方法。因为既然新浪已经将当前的IP地址认为是产生异常行为的地址,所以在短时间内不会对该IP地址解封(一般2-3天以后才会解封)。所以得使用其他的IP对微博页面进行爬取。
在实验室局域网内,ip地址是根据MAC地址固定分配。所以想要改成局域网内其他的ip地址,得需要知道局域网内有哪些ip地址可用。
COLOR 0A CLS @ECHO Off Title 查询局域网内在线电脑IP :send @ECHO off&setlocal enabledelayedexpansion ECHO 正在获取本机的IP地址,请稍等... for /f "tokens=3 skip=2 delims=: " %%i in ('nbtstat -n') do ( set "IP=%%i" set IP=!IP:~1,-1! ECHO 本机IP为:!IP! goto :next ) :next for /f "delims=. tokens=1,2,3,4" %%i in ("%IP%") do set range=%%i.%%j.%%k ECHO.&ECHO 正在获取本网段内的其它在线计算机名,请稍等... ECHO 本网段【%range%.*】内的计算机有: for /f "delims=" %%i in ('net view') do ( set "var=%%i" ::查询在线计算机名称 if "!var:~0,2!"=="\\" ( set "var=!var:~2!" ECHO !var! ping -n 1 !var!>nul )) ECHO. ECHO 正在获取本网段内的其它在线计算机IP,请稍等... for /f "skip=3 tokens=1,* delims= " %%i in ('arp -a') do ECHO IP: %%i 正在使用 ECHO. ECHO 查询完毕,按任意键退出... pause>nul
将以上代码存放在文本中,修改后缀名为.bat,以管理员的身份运行,可以查看当前网络中其他主机的ip地址。
![](http://img.my.csdn.net/uploads/201304/12/1365766677_7567.jpg)
有了这些ip地址,再使用NBTSTAT -a 目的IP 得到目的IP的MAC地址。
![](http://img.my.csdn.net/uploads/201304/12/1365766693_6872.jpg)
修改本机的MAC地址为以上查询到的MAC地址,可以使用MAC地址修改器,或者直接打开网络和共享中心,打开本地连接的属性,配置,选择“高级”,选择网络地址,填写要修改的MAC地址。
![](http://img.my.csdn.net/uploads/201304/12/1365767108_4287.jpg)
不久,IP地址就会根据更改后的MAC地址重新分配,现在相当于两台主机共同分得网络流量使用,你可以使用这个IP重新运行程序,爬去新浪微博。
这都是在出现“你的行为有些异常,请输入验证码:”之后的解决方法。如果想避免出现这种情况,最好是在运行程序时,不要短时间内多次运行,最好间隔一定的时间运行一次。
本文为xyw_Eliot原创,转载请注明出处:http://blog.csdn.net/xyw_eliot/article/details/8791987
相关文章推荐
- 登录页面验证码的简单实现,以及getOutputStream() has already been called for this response异常的解决方法
- Windows 10下任务栏上直接输入不能搜索解决方法
- 管理员权限在CMD下输入NET或ftp等命令 提示"拒绝访问"的解决方法
- springmvc 页面400异常,访问不到controller原因及解决办法
- eclipse中tomcat正常启动但不能访问tomcat管理页面的解决方法
- 多线程写文件异常(正由另一进程使用,因此该进程无法访问该文件)的解决方法
- apache安装了,通过ip访问不了apache的页面方法解决
- string.Format出现异常"输入的字符串格式有误"的解决方法
- string.Format出现异常"输入的字符串格式有误"的解决方法
- windows 2003上安装测试管理工具TestDirector 8.0,访问页面显示HTML代码的解决方法
- 先装了FRAMEWORK,后装IIS导致asp.net页面无法访问的解决方法
- idea开启tomcat后,不能访问localhost:8080页面的解决方法
- C#使用String.Format()方法时,出现异常"输入的字符串格式有误"的解决方法
- eclipse中tomcat正常启动但不能访问tomcat管理页面的解决方法
- C程序访问hadoop出现的各种编译错误和运行时各种类DefFound异常的解决方法(makefile的书写和环境变量的配置)
- 异常详细信息: System.Web.Hosting.HostingEnvironmentException: 访问 IIS 元数据库失败 解决方法
- IIS配置与错误提示 500.19 - Internal Server Error 无法访问请求的页面,因为该页的相关配置数据无效 解决方法
- dedecms搜索页面不能使用arclist等标签的解决方法
- PetShop4.0 安装错误“未找到源,但未能搜索某些或全部事件日志。不可访问的日志:Security“ 解决方法