我如何通过在python中使用不同的ip addressess来打开同一个网站

时间:2016-07-21 06:31:01

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

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

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()

提前致谢

1 个答案:

答案 0 :(得分:0)

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

  1. 请求 - http://docs.python-requests.org/en/master/这是一个很酷的图书馆系统,它使得发布网络请求变得微不足道。该页面上的大量例子。
  2. URLLib2 - https://docs.python.org/2/library/urllib2.html如果我不想包含第三方模块,这是我可能会使用的方法。在编码网址时你需要小心一点(使用urllib来转义字符等)。
  3. 至于网页抓取(一个可怕的糟糕名称 - 称之为HTML解析!),请看看Beautiful Soup(http://beautiful-soup.readthedocs.io/en/latest/)。只有在使用上述方法之一检索数据后才能使用它。

    您还需要注意很多网站都知道上下文 - 所以您在浏览器中看到的不是您将使用这些方法获得的内容 - 您可能必须发出一堆请求(例如登录并按正确的顺序维护cookie等。但这完全取决于你打电话的内容,而且你在问题中没有指明。