大家好,我是一个刚学爬虫的新手,我最近学爬虫时遇到一个编码的问题,其实我就是想要得到一个网页的源代码,然后进行正则匹配,但是requests得到的wb_data我不清楚什么不能print wb_data.text ,这是报错信息 UnicodeEncodeError: 'ascii' codec can't encode characters in position 532-544: ordinal not in range(128)
还有就是字典输出问题 我上午的时候用了print repr(data).decode("unicode-escape")当时成功了 下午却不知道为什么失败了,我很疑惑,报错信息
UnicodeEncodeError: 'ascii' codec can't encode characters in position 224-228: ordinal not in range(128)
我已经被这两个疑问烦了一天了,希望各位大神帮帮忙
以下是源代码
# -*-coding:utf-8-*-
from bs4 import BeautifulSoup
import requests
import re
import urllib2
url='http://bj.58.com/pbdn/0/'
wb_data=requests.get(url)
#first question
print wb_data.text
soup=BeautifulSoup(wb_data.text,'lxml')
titles=soup.select('tr.zzinfo > td.t > a')
srcs=soup.select('tr.zzinfo > td.t > a')
imgs=soup.select('tr.zzinfo > td.img > a > img')
prices=soup.select('span.price')
for title,src,img,price in zip(titles,srcs,imgs,prices):
data={
'title':title.get_text(),
'src':src.get('href'),
'img':img.get('lazy_src'),
'price':price.get_text()
}
#second question
print repr(data).decode("unicode-escape")