我正在尝试学习一些python,我想测试的逻辑有问题。 当前,我的代码是以这样的方式编写的:当进程启动时,绑定到源地址的方式不会改变
import socket
import requests
real_create_conn = socket.create_connection
def set_src_addr(*args):
address, timeout = args[0], args[1]
source_address = ('201.X.X.1', 0)
return real_create_conn(address, timeout, source_address)
socket.create_connection = set_src_addr
r = requests.get('http://www.mywebpage.com/main')
print r.status_code
if r.status_code == 404
print "Webpage Down!"
r = requests.get('http://www.mywebpage.com/blog')
print r.status_code
if r.status_code == 204
print "Error occured!"
我想做这样的事
import socket
import requests
While 1:
#bind to source address 201.X.X.1
#Send request to main webpage
#print result
time.sleep(300) # 5 minutes
#bind to source address 201.X.X.12
#Send request to blog webpage
#print result
time.sleep(300) # 5 minutes
对于每个请求,没有很好的解决方案,但是您需要使用一个请求会话对象并为每个请求安装一个新的传输适配器。
可以在this issue comment中找到传输适配器的示例代码,也可以使用
requests-toolbelt
包中包含的适配器,如下所示假设
list_of_sources_and_urls
看起来像相关问题 更多 >
编程相关推荐