pycurl,如何发送多选择表单的POST数据?

2024-10-01 13:29:44 发布

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

我正在尝试做一些网络垃圾处理,它涉及到发送一个带有多个选择框列表的表单,类似于:

<select name="multipleSelectForm" multiple="multiple" size="5">
    <option value="value1">value1</option>
    <option value="value2">value2</option>
</select>

现在,我想使用pycurl发送value1和value2,例如:

^{pr2}$

现在明显的问题是它多次发送multipleSelectForm。我很确定请求的页面可能正在寻找一个multipleSelectForm数组,而不仅仅是单个变量(这只是猜测,我实际上不确定),因此它接收到的POST数据是不正确的。在

我尝试使用Google Chrome的开发工具查看它的流量,当我查看表单数据时,它看起来像这样:

multipleSelectForm:value1
multipleSelectForm:value2

如果有人愿意帮忙的话,我有点不知所措


Tags: 数据name网络表单列表sizevaluemultiple
1条回答
网友
1楼 · 发布于 2024-10-01 13:29:44

从那看来你发送的数据

{ 'multipleSelectForm':'value2' }

因为这是本字典。如果你把它设置成元组对,它会做你想要的。在

^{pr2}$

通过设置一个小型调试http服务器,您可以自己测试:

from BaseHTTPServer import BaseHTTPRequestHandler, HTTPServer                                                                                                                                                                                                                     

class hand(BaseHTTPRequestHandler):                                          
    def __init__(self, socket, *args):                                       
        print socket.recv(10000)                                             

server = HTTPServer(('', 8080), hand)                                        
server.serve_forever()                                                       

然后用你的剧本来打击它。我用这个来确认传递元组列表是否符合我的预期。在

相关问题 更多 >