如何使用python立即发送http请求参数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用python立即发送http请求参数相关的知识,希望对你有一定的参考价值。
1 首先安装requests这个模块,方法是 输入pip install requests。当然你要装好pip这个包管理器。2 然后
import requests
url = " " # 这里是你的url
your_param = 'Refer':"sina_index" # 这里是你要发送的请求参数!, 它在url后边加上 ??Refer=sina_index这样子的东东
result = requests.get(url, param = your_param) # 发送请求,如果url是http://s.weibo.com/weibo/s 那么 这句话的的效果就是 http://s.weibo.com/weibo/s?Refer=sina_index
result_final = result.text #这样你就获取到了你发送的这个URL + 参数 之后的结果
全部手打的,采纳呗。 参考技术A import socket
import sys
def http_client(host,port):
cs = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
cs.connect((host,port))
return cs
def senddata():
server = 'www.test.com'
port = 8
cs = http_client(server,port)
data = 'GET %s HTTP/1.1\r\n' %(r'http://www.test.com/google.htm')
cs.sendall(data)
data = 'Host: www.test.com\r\n'
data += 'Accept-Charset: gb2312,utf-8;q=0.7,*;q=0.7\r\n'
data +='User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; InfoPath.2)\r\n'
data += '\r\n'
cs.sendall(data)
try:
while True:
buf = cs.recv(2048)
if not buf:
break
print buf
cs.close()
except KeyboardInterrupt:
cs.close()
sys.exit(0)
except:
cs.close()
if __name__ == '__main__':
使用 PHP-FPM 和 Apache 时如何立即发送 HTTP/2 标头
【中文标题】使用 PHP-FPM 和 Apache 时如何立即发送 HTTP/2 标头【英文标题】:How to send HTTP/2 headers immediately when using PHP-FPM and Apache 【发布时间】:2019-08-18 22:48:03 【问题描述】:当以 FPM 运行时,我似乎无法立即从 PHP 发送标头。它们仅在请求结束时与内容一起发送。
我有一个 Apache + PHP-FPM 设置。我在 PHP 和 Apache 中禁用了输出压缩。
我什至使用tcpdump -nn -i any -A -s 0 port 9000
查看了 TCP 连接流,我发现 PHP 直到最后才将标头发送到 Apache,所以问题出在 PHP 设置上。
请看下面我正在使用的测试代码。
header('Status: 200 OK');
header('Content-type: text/html; charset=utf-8');
header('Link: </src/app/src/App/Ui/Layout/default.css?__mtime=1553684041>; rel=preload; as=style;', false);
flush();
header('Test: 1', false);
sleep(5);
header('Test2: 2', false);
echo 'test';
我希望 Link:
标头在请求结束之前发送,即在 'test'
字符串之前发送,但事实并非如此。在5
秒延迟之后,所有标头都在请求结束时发送。
我做错了什么?
【问题讨论】:
您可能正在寻找ob_flush。 @Dave 它也不起作用。 不知道为什么它不起作用,但有没有想过为此使用 103? @BarryPollardPHP does not support 103 Early Hints, because it doesn’t have a native ability to send more than 1 status code back to a client
- evertpot.com/http/103-early-hints
【参考方案1】:
默认情况下,fastcgi_buffering
设置为 on
。
您需要在相关的location
块中添加:fastcgi_buffering off;
。
【讨论】:
以上是关于如何使用python立即发送http请求参数的主要内容,如果未能解决你的问题,请参考以下文章