在编写爬虫时,需要利用拼接URL获得相应页面。如:在和讯网,希望获得搜索关键词“乐视网”的页面,发现链接如下:
http://news.search.hexun.com/news?key=%C0%D6%CA%D3%CD%F8&s=1&page=1&f=0
“乐视网”转为“%C0%D6%CA%D3%CD%F8”
之前也遇到类似的问题:然后利用
name = "乐视网" print(parse.quote(name))
来转码拼接,但是发现获得“%E4%B9%90%E8%A7%86%E7%BD%91”
然后发现:
name = "乐视网" print(name.encode('utf-8'))
得到: b'\xe4\xb9\x90\xe8\xa7\x86\xe7\xbd\x91'
很相似,然后尝试:
name = "乐视网" byteName = name.encode('utf-8') quoteName = parse.quote(byteName) print(quoteName)
得到:%E4%B9%90%E8%A7%86%E7%BD%91
好了,至此只需要尝试“乐视网”的其他编码格式就好了
name = "乐视网" byteName = name.encode('gbk') quoteName = parse.quote(byteName) print(quoteName)
得到:%C0%D6%CA%D3%CD%F8
圆满得到结果。