python 如何分割http请求线?

标签 python python-3.x python-2.x

这是我的请求行示例:

GET https://example.com/hello?ageSelections=0&category=6000&productPeriodType=3&resourcePlace=resourcePlace AND 5089=5089-- PStU&twoCategory=6200 HTTP/1.1

我想分割这个字符串并期待结果:

['GET', 'https://example.com/hello?ageSelections=0&category=6000&productPeriodType=3&resourcePlace=resourcePlace AND 5089=5089-- PStU&twoCategory=6200', 'HTTP/1.1']

谢谢:-)

最佳答案

使用str.partitionstr.rpartition的两步方法(也可以通过str.splitstr来完成.rsplit 每次都带有 maxsplit=1 参数):

line = 'GET https://example.com/hello?ageSelections=0&category=6000&productPeriodType=3&resourcePlace=resourcePlace AND 5089=5089-- PStU&twoCategory=6200 HTTP/1.1'
method, _, rest = line.partition(' ')
url, _, protocol = rest.rpartition(' ')
parsed_line = [method, url, protocol]

关于python 如何分割http请求线?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47706721/

相关文章:

python - 导入错误:没有名为 '_sqlite3' 的模块

python-2.7 - 引发 RRuntimeError 时从 R 捕获回溯

python - 类型错误 : '_csv.reader' object has no attribute '__getitem__' ?

python - Weasyprint HTML 到 PDF 右边距的巨大差距

python - 用于存储 double float 的节省空间的文件类型

python - 方法在 Python 2 中对 Unicode 友好吗?

python - 如何通过将其索引视为键来展平包含列表的字典?

python - 在提交期间删除错误查询

Python:SystemError 父模块未加载,无法执行相对导入

python-3.x - 如何从csv获取数据到python对象中