【问题标题】:how i can open the same website by using different ip addressess in python我如何在python中使用不同的IP地址打开同一个网站
【发布时间】:2016-07-21 06:31:01
【问题描述】:

我必须使用不同的 ip 地址打开同一个网站,以便使用 python 进行网页抓取。我没有关于网页抓取的详细知识。我在下面尝试过,但我不明白。这个的详细代码是什么???

def connectToSiteFunction(ip):
        # your code to bind ip (if it's a source) or connect to it (if it's a dst) 
        # and do your thing here

def connectAndWait():
    for ip in ips:
        t = threading.Thread(target=connectToSiteFunction, args=(ip,))
        yield t
        t.start()
        os.sleep(15)

threads = [t for t in connectAndWait()]
for t in threads:
    t.join()

提前致谢

【问题讨论】:

    标签: python-2.7 selenium-webdriver web-scraping


    【解决方案1】:

    您的标题和问题似乎不一致:如果您知道系统的地址,则可以使用以下几种主要方法之一:

    1. Requests - http://docs.python-requests.org/en/master/ 这是一个很酷的图书馆系统,它使得发出网络请求变得微不足道。该页面上有大量示例。
    2. URLLib2 - https://docs.python.org/2/library/urllib2.html 如果我不想包含第 3 方模块,我可能会使用这种方法。编码 url 时需要小心(使用 urllib 转义字符等)。

    至于网络抓取(一个可怕的可怕名称 - 称之为 HTML 解析!),请查看 Beautiful Soup (http://beautiful-soup.readthedocs.io/en/latest/)。这仅在您使用上述方法之一检索数据后才有用。

    您还需要注意,许多网站都知道上下文 - 因此您在浏览器中看到的内容并不是您使用这些方法将返回的内容 - 您可能需要发出一堆请求(例如登录) 并以正确的顺序维护 cookie 等。但这完全取决于您要调用的内容,并且您没有在问题中指定。

    【讨论】:

      猜你喜欢
      • 2014-07-10
      • 2013-09-01
      • 2018-01-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多