Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/358.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
为URL-Python编码字符串_Python_Web Scraping_Urlencode - Fatal编程技术网

为URL-Python编码字符串

为URL-Python编码字符串,python,web-scraping,urlencode,Python,Web Scraping,Urlencode,我有以下URL需要为URL编码:这是Reddit上当前的头条标题,直到皮条客们戴着许多在当铺买来的黄金珠宝“重新典当”以获得保释金,因为逮捕时现金被没收,但珠宝不是 我遇到了一个问题,因为这个字符串包含unicode字符,特别是引号 我尝试了urllib.quote\u plus(message),但这引发了以下异常: Traceback (most recent call last): File "testProgram.py", line 44, in <module>

我有以下URL需要为URL编码:
这是Reddit上当前的头条标题,直到皮条客们戴着许多在当铺买来的黄金珠宝“重新典当”以获得保释金,因为逮捕时现金被没收,但珠宝不是

我遇到了一个问题,因为这个字符串包含unicode字符,特别是引号

我尝试了
urllib.quote\u plus(message)
,但这引发了以下异常:

Traceback (most recent call last):
  File "testProgram.py", line 44, in <module>
    main()                                      # Run
  File "testProgram.py", line 41, in main
    testProgram(headline)                                   # Make phone call
  File "testProgram.py", line 31, in testProgram
    urllib.quote_plus(message)
  File "/usr/local/Cellar/python/2.7.8_1/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib.py", line 1293, in quote_plus
    s = quote(s, safe + ' ')
  File "/usr/local/Cellar/python/2.7.8_1/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib.py", line 1288, in quote
    return ''.join(map(quoter, s))
KeyError: u'\u201c'
回溯(最近一次呼叫最后一次):
文件“testProgram.py”,第44行,在
main()#运行
文件“testProgram.py”,第41行,在main中
测试程序(标题)#打电话
testProgram中第31行的文件“testProgram.py”
urllib.quote_plus(消息)
文件“/usr/local/ceral/python/2.7.8_1/Frameworks/python.framework/Versions/2.7/lib/python2.7/urllib.py”,第1293行,在引号中加上
s=报价单(s,safe+“”)
文件“/usr/local/ceral/python/2.7.8_1/Frameworks/python.framework/Versions/2.7/lib/python2.7/urllib.py”,第1288行,在引号中
返回“”。加入(映射(引用人)
键错误:u'\u201c'

有人知道为什么吗?

如果
消息
是Unicode字符串,请尝试:

urllib.quote_plus(message.encode('utf-8'))

utf-8
在URL中没有被普遍使用(我不认为有一个普遍接受的标准,唉),但是由于它的“通用”性质,它非常流行(每个Unicode字符都可以用utf-8表示,这对于许多其他流行的编码来说都不是如此).

如果
消息
是Unicode字符串,请尝试:

urllib.quote_plus(message.encode('utf-8'))
utf-8
在url中没有被普遍使用(我认为没有一个被普遍接受的标准,唉),但由于它的“通用”性质,它非常流行(每个Unicode字符都可以用utf-8表示,这对于许多其他流行的编码来说都不是如此)