多拨爬虫自动切换 IP 的例子

2018-11-27 06:12:14 +08:00
 smallgoogle

最近在做网易云的信息抓取,数据太大了。几十个亿。
用 HTTP 代理吧,多线程太慢了。所以就用了远程多拨。
速度还是挺快的。然后就把这个自动切换的脚本放出来。
也是给自己做个记录吧。
其实就是调用 win 下自己的那个 V-P-N 拨号。拨远程而已。。

'''

import os
import time

class VPNHelper(object):
# VPNName: _vpnIP
# VPNUsername: _userName
# VPNPassword: _passWord
def __init__(self, _vpnIP="代理名称", _userName="多拨账号", _passWord="多拨密码", WinDir=r"C:\windows\system32", RasDialFileName=r'\rasdial.exe'):
self.IPToPing = _vpnIP
self._VPNName = _vpnIP
self._UserName = _userName
self._PassWord = _passWord
self._WinDir = WinDir
self._RasDialFileName = RasDialFileName
self._VPNPROCESS = self._WinDir + self._RasDialFileName

def connectVPN(self):  
    try:  
        command = self._VPNName + " " + self._UserName + " " + self._PassWord  
        res = os.system(self._VPNPROCESS + " " + command)  
        return res  
    except:  
        print("VPN 连接失败!")  

def disConnectVPN(self):
    try:
        command = self._VPNName + " /d"
        os.system(self._VPNPROCESS + " " + command)
    except:
        print("VPN 断开失败!")

def Restart(self, waitingTime=2):
    self.disConnectVPN()
    time.sleep(waitingTime)
    res = self.connectVPN()
    return res

# if __name__ == "__main__":
# vpn = VPNHelper()
# vpn.Restart()

'''

3846 次点击
所在节点    Python
10 条回复
myhot21
2018-11-27 08:03:01 +08:00
代理本身并不慢,慢的只是你用了免费代理 ip。
zhujinlong
2018-11-27 12:46:36 +08:00
1. Non-Blocking http
2. Http client proxy
你的这个方案太慢了
gamecreating
2018-11-27 13:58:43 +08:00
市面上的全国混拨 VPN 没有靠谱稳定的...
楼主有吗
techeek
2018-11-27 15:28:56 +08:00
可以看下我前段时间吃饱了撑的做的项目
https://www.techeek.cn/zhihu_64W
最近更新了下源码,不用代理了,直接抓接口
Nick2VIPUser
2018-11-27 16:21:33 +08:00
借楼问一下各位大佬:
```
我想试验使用宽带拨号 VPS 作《代理 IP 》的效果。
然后测试了两家拨号 VPS 的机器(配置:1 核 1G30M centOS 系统),有一个同样的问题:
- 循环 pppoe-stop;pppoe-start 命令执行后,10 次有 3~4 次是没有网的( curl www.baidu.com 不通)
- 执行 pppoe-stop;pppoe-start 命令后并没有报错和其他提示,ifconfig 也能显示公网 IP
- 问了客服也问不出个所以然来
```
原帖: https://www.v2ex.com/t/509442#reply0
smallgoogle
2018-11-27 22:00:11 +08:00
@gamecreating 我有一个。一个月 60,可以两个端拨。很快。
smallgoogle
2018-11-27 22:01:16 +08:00
@Nick2VIPUser 你大概是 linux 系统。linux 设置了 V-P-N、还需要再设置一下网关。不然 IP 其实是没变动额。
Themyth
2020-12-31 16:50:40 +08:00
@techeek 请问您这个项目是个可执行的二进制文件么?有其他介绍页面么?打开 url 是直接下载的。。。
techeek
2023-08-29 15:51:15 +08:00
Themyth
2023-08-29 17:33:08 +08:00
@techeek 谢谢

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/511781

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX