導航:首頁 > 編程語言 > python解決爬蟲亂碼

python解決爬蟲亂碼

發布時間:2022-11-19 07:22:02

python編寫爬蟲爬到的中文字元總是亂碼,r.encoding也不行

這個頁面是gb2312編碼的,不是utf-8

⑵ python爬蟲抓下來的網頁,中間的中文亂碼怎麼解決

對於python的中文編碼問題可以參考下面的帖子
http://python.jobbole.com/85482/

同時,對於網頁的中文亂碼,建立使用requests模塊代替urllib\urllib2
requests的content方法,對中文編碼,支持比較好,基本不會出現亂碼。
req=requests.get(url,cookies=mecookies)
print req.content

具體用法,參見下面兩個帖子,較詳細:
http://blog.csdn.net/iloveyin/article/details/21444613
http://blog.csdn.net/alpha5/article/details/24964009

⑶ 求Python大佬解決爬蟲亂碼

一般亂碼問題有可能是以下幾種原因導致:
1、編解碼方式不對(GKB、UTF8等等,或是乾脆用到的編碼不支持爬到的文字內容)
2、加解密問題,現在很多平台都有加解密的機制,沒有正確方式解密的話,也會出現亂碼
3、其他問題,建議具體問題具體分析
可以根據實際的情況具體分析~

⑷ python爬蟲抓下來的網頁,中間的中文亂碼怎麼解決

這個肯定是編碼的問題,你抓下來的內容要解一下碼,你先看下網的的編碼,按對應的編碼進行解碼就可以得到想要的內容了。
比如:read().decode('utf-8')

⑸ 我在寫一個python的網路爬蟲,寫入記事本的內容都是亂碼如何使寫入的數據以utf8或者gb2312的碼制寫入。

我從自己一個utf8的爬蟲程序裡面摘的。

程序開頭:

#!/usr/bin/envpython
#-*-coding:utf8-*-
importurllib
importurllib2
importstring
importre
importsys
type0=sys.getfilesystemencoding()#解決中文亂碼問題


後面做抓取程序的時候全部加上decode和encode。

pos1=text.find(term.decode("utf-8").encode(type0))


在輸入到txt的時候相應的分隔符也要decode和encode:

f.write(info+'!'.decode("utf-8").encode(type0))


希望能幫到你。

⑹ python爬蟲爬到的中文亂碼怎麼辦

爬到的內容,肯定是某種編碼格式(utf-8/gb2312等)的字元串。只需要對它相應的decode一下就可以了。
比如:如果網頁內容是utf-8編碼的,就:'xxx'.decode('utf-8');
如果是gb2312編碼的,就:'xxx'.decode('gb2312')

⑺ 為什麼Python寫的爬蟲有時候抓取的數據是亂碼

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

import urllib2
import re

url='http://tieba..com/p/3295185529?see_lz=1'

#打開頁面並進行轉碼
page=urllib2.urlopen(url).read().decode('gbk')
print 'Open %s'%url

#去掉超鏈接和圖片
none_re=re.compile('<a href=.*?>|</a>|<img.*?>')

#換行符轉換
br_re=re.compile('<br>')

#標題
title_re=re.compile('<h1 class="core_title_txt " title="(.*?)"')
#帖子內容
content_re=re.compile('<div id="post_content_\d*" class="d_post_content j_d_post_content ">(.*?)</div>')

#搜索文章標題,並去掉文件標題可能含有的特殊符號
title=re.search(title_re,page)
title=title.group(1).replace('\\','').replace('/','').replace(':','').replace('*','').replace('?','').replace('"','').replace('>','').replace('<','').replace('|','')

#搜索文本內容
content=re.findall(content_re,page)

with open('%s.txt'%title,'w') as f:
print 'Writing %s.txt now...'%title
for i in content:

#對html特殊符號進行替換處理
i=re.sub(none_re, '', i)
i=re.sub(br_re, '\n', i)

#寫入文本文件
f.write(i.encode('utf-8').strip()+'\n')
print 'Done!'

⑻ 為什麼Python寫的爬蟲有時候抓取的數據是亂碼

看下面即可

⑼ 為什麼python寫的爬蟲有時候抓取的數據是亂碼

1. 使用chrome瀏覽器,打開示例頁面http://tieba..com/p/3295185529?see_lz=1
2. 在帖子標題處,右鍵選擇"審查元素",可以看到標題的源代碼

3. 進行簡單的分析,我們需要獲取的是title後面的內容,根據頁面實際內容,我們編寫相應的正則表達式:
title_re=re.compile('<h1 class="core_title_txt " title="(.*?)"')
4. 同理,我們對帖子內容進行"審查元素",得到內容的源代碼

5. 編寫相應的正則表達式如下:
content_re=re.compile('<div id="post_content_\d*" class="d_post_content j_d_post_content ">(.*?)</div>')
6. 這樣通過urllib2打開頁面後,使用上述的正則表達式進行匹配,再對標題和文本內容進行相應的處理即可

閱讀全文

與python解決爬蟲亂碼相關的資料

熱點內容
伺服器什麼樣的好賣 瀏覽:140
單片機原理及應用第二版例題答案 瀏覽:960
base64encoderjava 瀏覽:482
linux視頻轉換 瀏覽:694
linux與unixshell編程指南 瀏覽:132
vb6反編譯程序錯誤 瀏覽:120
伺服器弄掛有什麼影響 瀏覽:300
安卓軟體為什麼運行不了 瀏覽:526
什麼安卓手機是四方的 瀏覽:477
雲伺服器廠商租用多少錢 瀏覽:353
平安車貸解壓要多久 瀏覽:416
樂一php程序員待遇 瀏覽:164
ZDM命令無法識別 瀏覽:922
解壓小手工A4紙 瀏覽:983
鋼筋加密區是幾倍 瀏覽:671
編譯程序代碼軟體 瀏覽:808
怎麼恢復加密的東西 瀏覽:989
程序員賣茶 瀏覽:699
後端程序員英文 瀏覽:365
滴滴程序員平均月薪 瀏覽:593