gpt4 book ai didi

python - 循环遍历元组列表以对每个元组发出 POST 请求

转载 作者:行者123 更新时间:2023-11-30 23:31:25 24 4
gpt4 key购买 nike

我这里有一个元组列表:

import datetime
import requests
from operator import itemgetter

original = [(datetime.datetime(2013, 11, 12, 19, 24, 50), u'78:E4:00:0C:50:DF', u' 8', u'Hon Hai Precision In', u''), (datetime.datetime(2013, 11, 12, 19, 24, 50), u'78:E4:00:0C:50:DF', u' 8', u'Hon Hai Precision In', u''), (datetime.datetime(2013, 11, 12, 19, 24, 48), u'9C:2A:70:69:81:42', u' 5', u'Hon Hai Precision In 12:', u''), (datetime.datetime(2013, 11, 12, 19, 24, 47), u'00:1E:4C:03:C0:66', u' 9', u'Hon Hai Precision In', u''), (datetime.datetime(2013, 11, 12, 19, 24, 47), u'20:C9:D0:C6:8F:15', u' 8', u'Apple', u''), (datetime.datetime(2013, 11, 12, 19, 24, 47), u'68:5D:43:90:C8:0B', u' 11', u'Intel Orate', u' MADEGOODS'), (datetime.datetime(2013, 11, 12, 19, 24, 47), u'68:96:7B:C1:76:90', u' 15', u'Apple', u''), (datetime.datetime(2013, 11, 12, 19, 24, 47), u'68:96:7B:C1:76:90', u' 15', u'Apple', u''), (datetime.datetime(2013, 11, 12, 19, 24, 47), u'04:F7:E4:A0:E1:F8', u' 32', u'Apple', u''), (datetime.datetime(2013, 11, 12, 19, 24, 47), u'04:F7:E4:A0:E1:F8', u' 32', u'Apple', u'')]

data = [x[:-2] for x in original]

newData = sorted(data, key=itemgetter(0))

print newData

[(datetime.datetime(2013, 11, 12, 19, 24, 47), u'00:1E:4C:03:C0:66', u' 9'), (datetime.datetime(2013, 11, 12, 19, 24, 47), u'20:C9:D0:C6:8F:15', u' 8'), (datetime.datetime(2013, 11, 12, 19, 24, 47), u'68:5D:43:90:C8:0B', u' 11'), (datetime.datetime(2013, 11, 12, 19, 24, 47), u'68:96:7B:C1:76:90', u' 15'), (datetime.datetime(2013, 11, 12, 19, 24, 47), u'68:96:7B:C1:76:90', u' 15'), (datetime.datetime(2013, 11, 12, 19, 24, 47), u'04:F7:E4:A0:E1:F8', u' 32'), (datetime.datetime(2013, 11, 12, 19, 24, 47), u'04:F7:E4:A0:E1:F8', u' 32'), (datetime.datetime(2013, 11, 12, 19, 24, 48), u'9C:2A:70:69:81:42', u' 5'), (datetime.datetime(2013, 11, 12, 19, 24, 50), u'78:E4:00:0C:50:DF', u' 8'), (datetime.datetime(2013, 11, 12, 19, 24, 50), u'78:E4:00:0C:50:DF', u' 8')]

每个元组中的第一个元素是日期/时间,第二个元素是 MAC 地址,第三个元素是 RSSI 强度。

我正在寻找将 POST 请求中的每个元组发送到 Google 测量协议(protocol)的最佳方法,如下所示:

requests.post("http://www.google-analytics.com/collect", 
data="v=1&tid=UA-22560594-2&cid="varMACADDRESS"&t=event&ec="varDATETIME"&ea="varRSSI")

“varXXXXXX”代表元组的元素。

这就是我认为应该是的解决方案,但我想不出如何将每个元组的元素分配给 %s:

for tuples [:10] in newData:
requests.post("http://www.google-analytics.com/collect",
data="v=1&tid=UA-22560594-2&cid="%s"&t=event&ec="%s"&ea="%s")

最有效且Python式的方法是什么?

最佳答案

只需利用这样一个事实,您可以为 data kwarg 指定一个 dict,并且请求将 handle the form-encoding for you .

for date,mac,rssi in some_collection_of_tuples:
payload = {'t':'event','v':'1','ec':date,'cid':mac,...} #etc
requests.post("http://www.google-analytics.com/collect", data=payload)

关于python - 循环遍历元组列表以对每个元组发出 POST 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19944770/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com