PythonについてBeautifulSoup出力エンコーディング(Python 3.4.4を使用):BeautifulSoup出力エンコーディング:soup.p.encode( "utf-8")とsoup.select( 'a')&.getText()を組み合わせる方法
soup.p.encode( "utf-8")とsoup.select( 'a')を組み合わせるには& .getText()?
I.e.私は2つのうちの1つを行うことができますが、両方を行う方法はわかりません... - >私はsoup.p.encode( "utf-8")を使いたいと思います。 "Aloë"は私の出力では "aloÃ"に変換されます。
しかし、私はまた、 "soup.select( 'a')と" .getText() "を介してhrefオブジェクトを選択するためにスープオブジェクト(type:)を使いたいと思います。もし私がsoup.p.encode "utf-8")まずは、 "AttributeError: 'bytes'オブジェクトに属性 'select'がないため、これは不可能です。
しかし、スープオブジェクトをリストに変換してから文字列を変換すると、UTF-8文字を戻すには時間がかかりすぎたようです。例えば。 text = text.decode( 'utf-8')は機能しません。私は本当にいくつかのアドバイスを使用してください!
FYI私のコード:
import requests, bs4
res = requests.get(url)
try:
res.raise_for_status()
except Exception as exc:
print('There was a problem: %s' % (exc))
soup = bs4.BeautifulSoup(res.text,"html.parser", from_encoding="UTF-8")
#soup = soup.encode("utf-8")
#type: <class 'bs4.BeautifulSoup'>
#print(soup.original_encoding) -> None...
aElems = soup.select('a')
#type: <class 'list'>
lengthElems = len(aElems)
for i in range (0, lengthElems):
text = aElems[i].getText()
#text = text.decode('utf-8')
link = aElems[i].get('href')
- 文字の組み合わせを: ÂÂá çâリットル¢、C éé A〜E ëë îî IIのI ññ A 2ò A 3ó öö üü úU ï¯ â ' â... – Wouter