Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/316.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在python请求中发送原始数据_Python_Http_Python Requests - Fatal编程技术网

在python请求中发送原始数据

在python请求中发送原始数据,python,http,python-requests,Python,Http,Python Requests,我正在尝试使用python请求发送POST请求,其中包含以下数据: __VIEWSTATE=%2WEPDWUJODGWODC4MZI2D2QWBAIEDXYCHGDWAXNPYMXLAGQCBG8WAH8AZXYCZG9KFHBMDW8WAH4EVGV4DAUL16JxDEP15PXNSDXNTEP16RxNTEPINX15PXQSDxNNEQ16RxQGkAGGEPFGIEBWnzNxMB3JLWDYB3VhHcy1MZWKyKYMFJAYBYBYBC3Vy2VxYIAGEPDYCxYCFLZ

我正在尝试使用python请求发送POST请求,其中包含以下数据:

__VIEWSTATE=%2WEPDWUJODGWODC4MZI2D2QWBAIEDXYCHGDWAXNPYMXLAGQCBG8WAH8AZXYCZG9KFHBMDW8WAH4EVGV4DAUL16JxDEP15PXNSDXNTEP16RxNTEPINX15PXQSDxNNEQ16RxQGkAGGEPFGIEBWnzNxMB3JLWDYB3VhHcy1MZWKyKYMFJAYBYBYBC3Vy2VxYIAGEPDYCxYCFLZYCFLZLZZLZZZK8G8G8G8GKYKZZZZZYFYFYFYFZZZZZZZZZZZZZZKKKKKKZZZZZZZZZZZZZZZKKKKZZZZZZZZZZZ2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2H8AAGRKAGUPDXYEHWNLHWWQCAMRKAGGGGZCGPfG25LO2QCBA8WAH8CBRDMB3JTLWDYB3VHIGHCY1MZWKYMFJAXYEAGMPDXYEHWNLHQCAMRKAGGPfQUNZGLZCGXHETPUB25LO2QCB8WAH8CBRDMB3JTLWDYEB3VHIGHYEAGMBZLWKYEWKYEAGMPfKYEAGMPfBZKYEAGWWWWWQCAMGGGGfG25LWWWKYEAK8CBJJJJWWWWWWWWZKYEAGB8WBKYEAGZZKYWWWWWZ8CB8CB8WBKYWWWWWWWWWWWWZKYEAGZKYBZKYEAGB8WB2B8BZKYWWIXDXYGHWIFEMFSZXJ0IGFSZXJ0LWRHBMDLCH8FBQ5KAXNWBGF5OMJSB2NROX8GBSJXL9EV15HXLCDXNNEQ16NXQCDXKNEQINEQ16DXKNEU15DXQTEOZBBR5FX0NVBnRYB2XZZUMVLYZVBVC3RCYWS2V5X18WAWUYWYWXSB3DTYWLSBQHTZW5KTMV3CWUYYY2HRDGVYBYBXNHWET00BW%2FRQ%2BQ%2PPP7KUKKKKKKKKKE1YK7F7YCFJ3N3NZ3NZ3NZ3N73D=3N7M=3N7D=3W7W7MJ9W7W7W7W9W9W9W9W9W9W9W7WDQKYZCADDQQZFKKVCGLI0PKVCGKWGBUWDQK4QUIDAKDHRJAKT%2B00AQGSLQELAOPH28WDAVSIT9QCASVEP4YKATJ71VWC9PD07GOC8RFJVGOCORYYQECV6UC5A4C2DMTQUCRDNKTGICTRWSCJLBQKNsaufao6XPQUC7GLBQKKKKK7GLBQFAOKKKKKBQKKKKKBK7SDQKKKKKKKKKKKKKKKKK7SDKKJKKKKKKKKKJKKKKKKKKKKKKKKKKKKKKKKKKKKKKJ7SDKKKKKKJ7SDKKKKKKKKKKKJ7SDKKKKKKKKKKKKo6x5QYCjrHpBgLopM%2f9cwlsyzauaql4oo3lbak8yuqbcwl1hrizbwlupvvv7calsqkmsdglqy%2bhawlci9re5hii3r9barnvkmrb9wbnfejephfjrdpatclnxle%2BdKP&username2=gfk7ljlyks&password=boolbool1&password2=boolbool1&email=myail%40gf.com&fname=&lname=&lname=&phone=&street=&street=&city=&BYear=&bmonh=&Bmonth=&Bmonth=7%99%D7%D7=&b7%A0%bD7%bD9%bD9%bD7%bj=7%bD7%bD7%bD7%=&allowmail=on&SendNews=on&chkterms=on&BTN提交=%D7%9C%D7%97%D7%A5+%D7%9C%D7%A1%D7%99%D7%95%D7%9D+%D7%94%D7%A8%D7%A9%D7%9E%D7%94+%D7%9C%D7%90%D7%AA%A8

但正如我在文档中看到的,唯一的选择是将数据添加为dict(由于某种原因,它无法处理该数据)

有人知道如何正确发送这些数据吗?(结果应为302) 甚至更好的是,有人知道如何将这些数据转换成dict吗


非常感谢:)

发送原始帖子数据没有问题:

raw_data = '__VIEWSTATE=%2FwEPDwUJODgwODc4MzI2D2QWBAIEDxYCHgdWaXNpYmxlaGQCBg8WAh8AZxYCZg9kFhBmDw8WAh4EVGV4dAUl16jXmdep15XXnSDXntep16rXntepINeX15PXqSDXnNeQ16rXqGRkAgEPFgIeBWNsYXNzBSNmb3JtLWdyb3VwIGhhcy1mZWVkYmFjayBoYXMtc3VjY2VzcxYIAgEPDxYCHwEFLSog16nXnSDXntep16rXntepICjXkdeZ158gNCDXnCAxMiDXqteV15nXnSkgOmRkAgUPDxYCHwBoZGQCBw8PFgQeCENzc0NsYXNzZR4EXyFTQgICFgIfAgUwZ2x5cGhpY29uIGZvcm0tY29udHJvbC1mZWVkYmFjayBnbHlwaGljb24tcmVtb3ZlZAIJDxYGHwIFE2FsZXJ0IGFsZXJ0LXN1Y2Nlc3MeBXN0eWxlBQ5kaXNwbGF5OmJsb2NrOx4JaW5uZXJodG1sBRjXqdedINee16nXqtee16kg16TXoNeV15lkAgIPFgIfAGgWAmYPFgIfAgUXZm9ybS1ncm91cCBoYXMtZmVlZGJhY2sWBAIDDw8WBB8DZR8EAgJkZAIFDxYCHwUFDWRpc3BsYXk6bm9uZTtkAgMPFgIfAgUXZm9ybS1ncm91cCBoYXMtZmVlZGJhY2sWBgIBDw8WAh8AaGRkAgUPDxYEHwNlHwQCAmRkAgcPFgIfBQUNZGlzcGxheTpub25lO2QCBA8WAh8CBRdmb3JtLWdyb3VwIGhhcy1mZWVkYmFjaxYEAgMPDxYEHwNlHwQCAmRkAgUPFgIfBQUNZGlzcGxheTpub25lO2QCBQ8WAh8CBRdmb3JtLWdyb3VwIGhhcy1mZWVkYmFjaxYEAgMPDxYEHwNlHwQCAmRkAgUPFgIfBQUNZGlzcGxheTpub25lO2QCEw8WAh8CBRdmb3JtLWdyb3VwIGhhcy1mZWVkYmFjaxYEAgUPD2QWAh8FBQ1kaXNwbGF5Om5vbmU7ZAIHDw8WBB8DZR8EAgJkZAIXDxYGHwIFEmFsZXJ0IGFsZXJ0LWRhbmdlch8FBQ5kaXNwbGF5OmJsb2NrOx8GBSjXl9eV15HXlCDXnNeQ16nXqCDXkNeqINeq16DXkNeZINeU15DXqteoZBgBBR5fX0NvbnRyb2xzUmVxdWlyZVBvc3RCYWNrS2V5X18WAwUJYWxsb3dtYWlsBQhTZW5kTmV3cwUIY2hrdGVybXNHWETH5Z00Bw%2FRQ%2BPP7XKuKE1Yc7MfMt6j3NmJGEldOg%3D%3D&__VIEWSTATEGENERATOR=98F5786E&__EVENTVALIDATION=%2FwEWPwLc4fuhDgLPv6LBCALyveCRDwKt9JiEDQKyzcaDDQLQzfKVCgLi0PKVCgKwgbuWDQK4qIuIDAKDhrjXCAKT%2B%2B00AqGSlqELAoPh28wDAvSit9QCAsvep4YKAtj71VwC9pD07goC8rfjvgoCoryYqAECv6uC5A4C2dmTnQUCrdnKtgICyJiTrwsCjLGlBQKNsaUFAo6xpQUCj7GlBQKIsaUFAomxpQUCirGlBQKbsaUFApSxpQUCjLHlBgKMsekGAoyx7QYCjLHRBgKMsdUGAoyx2QYCjLHdBgKMscEGAoyxhQUCjLGJBQKNseUGAo2x6QYCjbHtBgKNsdEGAo2x1QYCjbHZBgKNsd0GAo2xwQYCjbGFBQKNsYkFAo6x5QYCjrHpBgLopM%2F9CwLsyZauAQL4oO3lBAK8yuqBCwL1hriZBwLUpvv7CALsqKmSDgLqoY%2BHAwLCi9reA5HII3R9bARNVKmrB9WBnfeJepHFJrdPAtcLnXlE%2BdKP&username2=gfk7ljlyks&password=boolbool1&password2=boolbool1&email=myeail%40gf.com&fname=&lname=&phone=&street=&city=&BYear=&Bmonth=%D7%99%D7%A0%D7%95%D7%90%D7%A8&Bday=1&career=&signature=&homepage=&icq=&Morehobbies=&allowmail=on&SendNews=on&chkterms=on&btnSubmit=%D7%9C%D7%97%D7%A5+%D7%9C%D7%A1%D7%99%D7%95%D7%9D+%D7%94%D7%94%D7%A8%D7%A9%D7%9E%D7%94+%D7%9C%D7%90%D7%AA%D7%A8'
requests.post(url, data=raw_data)
一个小的好处是,您的数据已经进行了百分比编码

从文档字符串:

post(url, data=None, json=None, **kwargs)
    Sends a POST request.

    :param url: URL for the new :class:`Request` object.
    :param data: (optional) Dictionary, bytes, or file-like object to send in the body of the :class:`Request`.
    :param json: (optional) json data to send in the body of the :class:`Request`.
    :param \*\*kwargs: Optional arguments that ``request`` takes.
    :return: :class:`Response <Response>` object
    :rtype: requests.Response

您正在尝试分析aspx页面?不管
data=dict(s.split(“=”,1))
。您可能会发现这也很有用,因为我有dict格式的数据,但它也返回200而不是302。我们认为我的格式不对,但事实并非如此。啊,好的,我看到所有的“发件人”字段都在那里,你能分享你发布到的url吗?我想你可能需要更多,而不仅仅是发布你在浏览器中看到的数据。你不能复制/粘贴你在浏览器中看到的内容并期望它能正常工作,请使用我在第一条评论中发布的链接中的逻辑。@PadraicCunningham:也许,我不知道数据来自何处。我只想指出,
requests.post()
支持发送字符串,不需要dict。但是如果它来自表单,可能OP只需要将
内容类型
标题设置为
application/x-www-form-urlencoded
。不管怎样+1,它回答了字面上的问题,但我认为OP问的是错误的。@Padraickenningham:谢谢。我认为你是对的,OP需要解析初始页面中的字段和值。
requests.post(url, data=raw_data, headers={'Content-Type': 'application/x-www-form-urlencoded'})