Python打开多个URL连接urllib2

2024-05-22 04:40:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试创建一个python脚本,它允许我加载多个连接,类似于在浏览器上打开多个选项卡,更明确地说,我有如下代码:

https://github.com/eWizardII/SOC357-Twitter-Facebook-Project/blob/master/chuck.py

使用urlv等,我加载到API的多个连接,但是我希望使其能够同时调用所有5个,而不是连续调用。我调查过一些像扭曲和整洁之类的东西,但我不知道如何利用它们来帮助我。在

谢谢, 所罗门


Tags: 代码httpsgithubmasterproject脚本comfacebook
3条回答

您可以使用threading库。这是它最适合的事情之一。在

使用外壳。在

#!/bin/bash
python chuck.py "request 1" &
python chuck.py "request 2" &
python chuck.py "request 3" &
python chuck.py "request 4" &
python chuck.py "request 5" &

这将运行您的程序的5个副本。它将尽可能多地连接核心和CPU。另外,没有使用子进程或线程或其他任何编程。在

如果所有5个都应该做不同的事情,那么你必须提供一些参数或选项。查看argparse以获取收集命令行参数的方法。在

您可以创建httphandler来处理异步http请求(就代码而言是异步的,而不是实际的网络操作)。在

试试这个:

import urllib2

class MyHttpHandler(urllib2.HTTPHandler):
    def http_response(self, request, response):
        for l in response:
            print l
        return response

u = urllib2.build_opener(MyHttpHandler())
for i in range(1, 5):
    u.open('http://stackoverflow.com')

相关问题 更多 >