我有一個這樣的鏈接<a href=abc.asp?xyz=foobar&baz=lookatme´_beautiful.jpg>
,其中有這個不尋常的符號´
,它甚至不存在於標準英文鍵盤中。 這是編輯器Ctrl+k
產生的符號的鏡像反射。 所以經過我跑這個代碼在計算器發現:使用BeautifulSoup解析罕見符號
soup = BeautifulSoup.BeautifulSoup("<a href=abc.asp?xyz=foobar&baz=lookatme´_beautiful.jpg>");
for a in soup.findAll('a'):
print a['href']
輸出是abc.asp?xyz=foobar&baz=lookatme
,但我想有。我正在抓取的網站位於.br
域中。有些作品在葡萄牙語中,即使鏈接是英文的,但這種罕見的符號可能不是有效的英文符號。任何想法或建議?
編輯:我看着那個Python字符串製作我的代表,它是大約<a href=abc.asp?xyz=foobar&baz=lookatme\xb4_beautiful.jpg>
一種方法是生產定製的正則表達式,而這個片段也是從計算器:
import re
urls = re.findall(r'href=[\'"]?([^\'" >]+)', s)
如果是不可能修改beautifulsoup的正則表達式,我怎麼修改上面的正則表達式來包含\xb4
這個符號。 (在這兒是有問題的字符串)
你能發佈一個鏈接到網頁嗎? – Blender
http://stackoverflow.com/questions/499345/regular-expression-to-extract-url-from-an-html-link - 這是stackoverflow網站,這是網站我試圖刮http:// www .atlasdermatologico.com.br/listar.asp?acao = mostrar&arquivo = sweet%B4s_syndrome48.jpg - 不要查看網頁中的其他鏈接;其總額僅限於醫療專業人員。我無法將%B4s合併到我的正則表達式中,我在我的python字符串中看到了\ xb4的字符串表示形式。 – motiur