打破壁垒IP爬虫推荐Github上的IPProxyPool

  • IPProxyPool
    爬虫的问题上IP问题算是比较重要的,解决这个问题又不想花钱买IP唯有通过技术这条道路,虽然现在网络爬虫有一定的规范,但是希望提高速度而又不打破规则的前提下,个人认为变换IP是一个比较能接受的办法。
    避免重复造轮,充分利用Github上的资源很重要。其实这个项目很早就已经有了,但是觉得很有用,有必要记录下来。

  • 将项目Git clone 到本地

  • 问题一:使用的是Python3还是Python2

    • 个人建议使用python3,毕竟python2是要淘汰了。
  • 问题二:下载好需要用的包、软件、设置环境变量

    • 包:pip install requests chardet web.py sqlalchemy gevent
    • 软件:sqlite路径添加到环境变量
  • 问题三:出现特殊情况

    • 有时候使用的gevent版本过低会出现自动退出情况,请使用pip install gevent --upgrade更新)
    • 在python3中安装web.py,如若不能使用pip,直接下载py3版本的源码进行安装(方法)
  • 问题四:在cmd运行IPPorxy.py出错,需要修改web.py包下的utils.py源代码

    • 将D:\Application\Compile\Anaconda3\Lib\site-packages\web\utils.py文件中的yield next(seq)换成
def take(seq, n):
        for i in range(n):
            yield next(seq)
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
def take(seq, n):
        for i in range(n):
            try:
                yield next(seq)
            except StopIteration:
                return
        #    yield next(seq)

最后,项目主页本来就很详尽,这里整理了个人容易出现的问题。

推荐阅读更多精彩内容