我正在尝试使用从调用api返回的标题来检索Wikipedia页面。 我从python的urllib2库调用Wikipedia API。
当我想要自动化这个过程时,我很难处理无名的标题。 以下是问题的一个示例:
让我们假设我们想要检索有关 Escola SuperiordeCiênciasEmpresariais的页面,其中包含以下链接: http://en.wikipedia.org/wiki/Escola_Superior_de_Ci%C3%AAncias_Empresariais_(Set%C3%BAbal)
所以问到问题的开始,如果我也使用维基百科api来搜索学校: http://en.wikipedia.org/w/api.php?action=query&list=search&srprop=''&format=xml&srsearch=Escola_Superior_de_Empresariais
我得到以下xml字符串:
<api>
<warnings>
<search xml:space="preserve">Unrecognized value for parameter \'srprop\': \'\'</search>
</warnings>
<query>
<searchinfo totalhits="7"/>
<search>
<p ns="0" title="Escola Superior de Ci\xc3\xaancias Empresariais (Set\xc3\xbabal)"/>
<p ns="0" title="List of universities in Cape Verde"/>
<p ns="0" title="Polytechnic Institute of Viana do Castelo"/>
<p ns="0" title="S\xc3\xa3o Vicente, Cape Verde"/>
<p ns="0" title="Economy of Portugal"/>
<p ns="0" title="Higher education in Portugal"/>
<p ns="0" title="Grupo Opaia SA"/>
</search>
</query>
</api>
我现在的问题是我们如何转换检索到的字符串
Escola Superior de Ci\xc3\xaancias Empresariais (Set\xc3\xbabal)
到可以直接从维基百科API调用的表单? 也就是说,我如何创建如下链接:
http://en.wikipedia.org/wiki/Escola_Superior_de_Ci%C3%AAncias_Empresariais_(Set%C3%BAbal)
从检索到的结果?
答案 0 :(得分:1)
使用urllib2.quote,它会为您执行此操作。
本质:
utf8_url = 'Escola Superior de Ci\xc3\xaancias Empresariais (Set\xc3\xbabal)'
percent_url = urllib2.quote(utf8_url)