制作网络爬虫中遇到的诸多问题及解决方案

 
   def getsourse(self,url):
        html=requests.get(url)
        html.encoding='utf-8'
        return html.text

关于html文件转text格式因为uft-8而出现乱码的问题


这种调用requests然后把html做text处理的时候,为了防止乱码,前面一定要加上“

html.encoding='utf-8'

”(基于网站具体的编码方式而定),否则会出现很多意想不到的情况。

关于正则表达式的匹配规则问题


title=re.search(r'title=\\\'(.*?)\\\'>',str(lists))

我这里实际上想要的匹配规则是前面是title=\',后面是\'>,如果我们在前面加了r的话,这里会有正则转义

而如果不加r,我们需要先进行字符串转义再进行正则转义,言下之意我们需要写成:

……好像我也不知道

关于写入文件时,utf-8会出现的乱码以及文件具体的创建模式问题

首先导入codecs,创建文件的时候注意用如下的方式

 
 
 
 
import codecs
f=codecs.open('text.txt','wb+','utf-8')

猜你喜欢

转载自blog.csdn.net/qq_38047461/article/details/81004491