mysql - python re抓站存数据问题。
巴扎黑
巴扎黑 2017-04-17 15:43:15
[Python讨论组]

喜欢看日乎日报,就像把他们采集下来方便以后看。
但是碰到这样的目标:http://daily.zhihu.com/story/4692091
采集回来存数据库的时候,只存第一个条目.
需要标题和内容,使用的是scrapy和re.compile方法。
如何将标题和内容一一对应,并全部存入数据库。
练习python中...
采集代码:

        ......
        item = ShenhuifuItem()
        sites = response.body
        i = sites
        items = []
        item['bid']=re.compile('(\d+)').findall(response.url)[0]
        item['title']=re.compile(r'<h2 class="question-title">(.*?)</h2>').findall(i)
        item['content']=re.compile(r'<p class="content">(.*?)</p>',re.DOTALL).findall(i)
        item['author']=re.compile(ur'<span class="author">(.*?)</span>').findall(i)
        for title in  item['title']:
            item['title'] = title
        for content in item['content']:
            item['content'] = content
        for author in item['author']:
            if "," in author:
                item['author'] = author[:-1]
            else:
                item['author']=author
        items.append(item)
        yield item
巴扎黑
巴扎黑

全部回复(2)
阿神

re.compile(r'<h2 class="question-title">(.*?)</h2>', re.M)

开启多行匹配模式

天蓬老师

谢谢,各位,匹配需求部分,然后使用for...in...循环解决。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号