簡體   English   中英

Python3編碼問題

[英]Python3 encoding issues

我正在研究使用python3進行爬網。 我只想從html代碼中提取文本。

例如)在html中

<div class='titleArea'>
    "~~~~~ text~~~~"
</div>

所以,我寫了這段代碼來提取文本

    title_temp = soup.findAll('div',class_='titleArea')
    print(title_temp)

**我知道print(title_temp [0] .text)但這沒關系

結果是

在此處輸入圖片說明

該圖片的內容是

[<div class='titleArea'>
        @#$!$^!@#!@^#!$^!@#!@#!@# 
</div>]
[<div class='titleArea'>
        @#$!$^!@#!@^#!$^!@#!@#!@# 
</div>]

***重復兩個列表的原因。

我不想這樣的文字。

我該怎么辦?

我認為這是utf-8問題。

對?

所以,

我寫的

# -*- coding: utf-8 -*-

但是,沒有效果。

import requests, bs4

r = requests.get('http://hri.co.kr/board/reportView.asp?firstDepth=1&secondDepth=1&numIdx=26865')
r.encoding='euc-kr'
soup = bs4.BeautifulSoup(r.text, 'lxml')
soup.find_all('div',class_='titleArea')

出:

[<div class="titleArea">
                                트럼프노믹스가 중국 경제에 미치는 영향
                             </div>]

chartset位於html頭標記中: 在此處輸入圖片說明

編輯:更優雅的方式:

import requests, bs4

r = requests.get('http://hri.co.kr/board/reportView.asp?firstDepth=1&secondDepth=1&numIdx=26865')
r.encoding = r.apparent_encoding

這將自動設置編碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM