【发布时间】:2018-06-14 01:05:43
【问题描述】:
所以到目前为止,我一直在环顾四周,并找到了热门歌曲,但没有什么能完全符合 IMO 的要求。我想要做的是使用一个名为“result”的 Python 字典(请注意,“keyword_scores”是一个字典列表,位于“data”字典中。):
>>> print result
>>> {
u'data': {
u'clean_table': u'true',
u'keyword_scores': [
{
u'keyword': u'edited for easy reading on SO',
u'score': 0.4054651081081644
}
],
u'user_id': u'2'
}
}
而且,至少我认为,使用某种组合
urllib.urlencode()
和
urlparse.parse_qs()
能够将“query_string”连接到 URL 上以供内部使用:
urllib2.Request(host_domain + some_post_data_endpoint + query_string)
我只推荐这些库,因为根据我目前的搜索,我认为我需要使用这些库,但我对在这里使用的方法和工具持开放态度。我遇到的问题是,无论出于何种原因,我似乎需要在调用 parse_qs() 之前对其进行 urlencode(),但其他建议说我需要在编码之前先调用 parse_qs()。似乎没有一种简洁的方法可以将不完全“扁平”的字典转换为 urllib2.Request() 使用的查询参数。
提前谢谢你!
【问题讨论】:
-
您只需要查询字符串中的keyword_scores吗?您能否在此示例中提供您想要的示例查询字符串?
-
我认为这是正确的问题,我无法为 urllib2.Request() 创建正确编码的查询字符串来处理,因为我要发送的数据在外部字典中有列表/字典。用所有的替换词打出来不会很有用(除非我误解了你)。
-
好的,只是想了解问题所在。我已经试了一下并在下面发布并回答。如果您想要将结果字典传递给您的端点,我认为您不需要 parse_qs。
标签: python-2.7 urllib2 urllib urlencode urlparse