python08,正则表达式,爬虫案例。有瑕疵

 用正则表达式,重新做了一下之前做的案例。“爬去百度贴吧小说”。运行了代码,发现还可以,只不过比较可惜的是,爬去的代码中有乱码。如图所示。
中间有一段是乱码,很遗憾

我目前想到的解决办法是 重新设定正则规则代替 .*?
但是目前还没有测试成功。

下面贴上我的代码:

#!/usr/bin/env python
#-*- coding: utf-8 -*-
#爬去百度贴吧小说,并且以text格式保存到本地,联系一下保存数据。
import re
import requests
url = "http://tieba.baidu.com/p/4944407708?see_lz=1"
wb_data=requests.get(url).text
key=r'class="d_post_content j_d_post_content ">            以后每一章都有誊写人,大家可以在最喜欢的人下面评论哦</div>'
p1 = r'd_post_content j_d_post_content ">.*?</div>'
pattern = re.compile(p1)
content = pattern.findall(wb_data)#[0].replace('            ','') #content   是一个列表集合。

t=1
for i in content:
    y = i.replace('            ','').replace('<br>','').replace('d_post_content j_d_post_content ">','').replace('</div>','')
    #用replace方法替换掉了许多不行要的结构。
    with open('小说 %s' %t + '.txt','w') as f:
    #当用open函数,以.txt文件结尾的时候,是可以储存并打开的。但是将参数,设置成.docx的时候,是没办法用word文件打开的,为何?
        t=t+1
        f.write(y)
        print('ok')
print(content)

以上代码,经过测试,能够运行,但是有一点瑕疵而已。

收货有两点。
第一,原来replace方法可以这么用。
第二,正则表达式还需要更完善一些。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 初衷:看了很多视频、文章,最后却通通忘记了,别人的知识依旧是别人的,自己却什么都没获得。此系列文章旨在加深自己的印...
    DCbryant阅读 9,534评论 0 20
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,953评论 25 709
  • 正则表达式到底是什么东西?字符是计算机软件处理文字时最基本的单位,可能是字母,数字,标点符号,空格,换行符,汉字等...
    狮子挽歌阅读 6,497评论 0 9
  • 几个正则表达式编辑器 Debuggex :https://www.debuggex.com/ PyRegex:ht...
    没技术的BUG开发攻城狮阅读 10,044评论 0 23
  • 我还记得我们的约定,我还记得我的承诺,所以,多久也无妨,只要最后是是你就好了,五年后、十年后、二十年后,我会在你身...
    浅秋浅述阅读 1,558评论 0 0

友情链接更多精彩内容