python爬虫 - mongodb 存入了pymongo传入的多个数据之后怎么提取有用的数据
问题描述
有多条这样类似的数据
{ '_id' : ObjectId('56d06f01c3666e08d0f0c844'), 'http://tieba.baidu.com/p/4345287300' : '【关于更新】作者原话', 'http://tieba.baidu.com/p/4328978430' : '服务。', 'http://tieba.baidu.com/p/4372502982' : '『诛魂记』第331章:圣东王府', 'http://tieba.baidu.com/p/4355241530' : '『诛魂记』第322章:麒麟之威', 'http://tieba.baidu.com/p/4329505585' : '『诛魂记』第313章:泣血跪求', 'http://tieba.baidu.com/p/4343824178' : '新年快乐啦啦啦', 'http://tieba.baidu.com/p/4328603018' : '写小说好看吗', 'http://tieba.baidu.com/p/4333008061' : '来吧,你我君臣一场', 'http://tieba.baidu.com/p/4315565196' : '『诛魂记』第305章:临危受命', 'http://tieba.baidu.com/p/4340906961' : '『诛魂记』第320章:擒贼擒王', 'http://tieba.baidu.com/p/4337476352' : '新年到了,是不是发红包了' }
我想在上面的数据当中获得能够匹配:『诛魂记』 的连接以及后面的文本数据,例如
'http://tieba.baidu.com/p/4329505585' : '『诛魂记』第313章:泣血跪求'
这样,同时把得查询到的结构存到另外一个表中,以及得到
'http://tieba.baidu.com/p/4329505585' : '『诛魂记』第313章:泣血跪求'
中的连接 http://tieba.baidu.com/p/4329505585
最近开始在接触一些爬虫相关的东西,想自己做个东西出来,实在是捉急了。
下面是python里面的代码
def craw(self, root_urls):for new_url in root_urls: html_cont = self.downloader.download(new_url) new_chapter_urls, new_linkdatas = self.parser.parselink(root_chapter_url, html_cont) mid_data = zip(new_chapter_urls,new_linkdatas) mid_mid_datas = dict((new_chapter_urls,new_linkdatas) for new_chapter_urls,new_linkdatas in mid_data) c = pymongo.MongoClient(host=’127.0.0.1’, port=27017) db = c.spider db.chapter_datas.insert(mid_mid_datas, check_keys=False)
问题解答
回答1:为什么不在抓取的时候直接根据data里面的内容是否包含“『诛魂记』”来过滤一下呢?
>>> s = '『诛魂记』第331章:圣东王府'>>> '『诛魂记』' in sTrue>>> s = '新年快乐啦啦啦'>>> '『诛魂记』' in sFalse
相关文章:
1. 在windows下安装docker Toolbox 启动Docker Quickstart Terminal 失败!2. font-family - 我引入CSS3自定义字体没有效果?3. docker images显示的镜像过多,狗眼被亮瞎了,怎么办?4. macos - mac下docker如何设置代理5. dockerfile - [docker build image失败- npm install]6. objective-c - iOS开发支付宝和微信支付完成为什么跳转到了之前开发的一个app?7. PHP中的$this代表当前的类还是方法?8. angular.js - 求一款angular插件9. java - 我用Tomcat访问SQL server数据库时,出现以下错误,该怎么解决?10. docker start -a dockername 老是卡住,什么情况?