首页 > 编程语言 > 详细

Python post 抓取数据时,遇 unicode 匹配问题 【解法】 及 知识点

时间:2020-02-16 21:42:55      阅读:85      评论:0      收藏:0      [点我收藏+]
知识点来:先上代码。看懂的就直接用。不费话。
 
# -*- coding: utf-8 -*-
 
from bs4 import BeautifulSoup as bs

import urllib, json, re
 
import sys
reload(sys)
sys.setdefaultencoding(‘utf-8‘)
 
params = {}
params[‘username‘]= "abc"
params[‘passwd‘] = "pwd"
 
params = urllib.urlencode(params)
data = urllib.urlopen(siteurl, params)
html = data.read()
soup = bs(html,‘html.parser‘ , from_encoding=‘utf-8‘)
content = soup.prettify( formatter="html" )
 
contentStr = soup.get_text()
 
out = re.findall(r" (.*?) 这里可以用中文",contentStr)
print out
 
 
----
知识点1:
开头要用好
# -*- coding: utf-8 -*-
这样先保证执行时编码正确
 
知识点2: 
import sys
reload(sys)
sys.setdefaultencoding(‘utf-8‘)
 
此条用于 让打开的文件及过程中的数据,编码正确。
 
知识点 3 :
正则中的内容中文输入法要写正确。 双引号要用得小心。括号要识别好是中文的还是英文的。
 
知识点4: 
此法主要是 用于 python post 请求数据 
params = urllib.urlencode(params)
data = urllib.urlopen(siteurl, params)
 
以下为 get 的方法: 
data = urllib.urlopen(siteurl)
 
知识点5:
此为  python 2 的方法。python 3有点小差别。
 
----
以上知识点记住了,抓数据就比较简单了。
 
 
 

Python post 抓取数据时,遇 unicode 匹配问题 【解法】 及 知识点

原文:https://www.cnblogs.com/iameric/p/12318025.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!