Python 爬虫 + MongoDB

本文讲述了如何使用Python爬虫从网页源代码中提取书籍的姓名和作者信息,并详细介绍了如何避免一次性写入数据库导致数据丢失的问题。通过逐条写入和处理源代码中的编码问题,确保数据正确存储。同时,提到了在提取信息时去除换行符的步骤,以提高数据的整洁性。最后,提醒读者在运行程序时确保MongoDB已启动,并欢迎指出代码的改进意见。
摘要由CSDN通过智能技术生成
在以上两篇文章中已经介绍到了 Python 爬虫和 MongoDB , 那么下面我就将爬虫爬下来的数据存到 MongoDB 中去,首先来介绍一下我们将要爬取的网站, readfree 网站,这个网站非常的好,我们只需要每天签到就可以免费下载三本书,良心网站,下面我就将该网站上的每日推荐书籍爬下来。

这里写图片描述

利用上面几篇文章介绍的方法,我们很容易的就可以在网页的源代码中寻找到书籍的姓名和书籍作者的信息。

找到之后我们复制 XPath ,然后进行提取即可。源代码如下所示

# coding=utf-8

import re
import requests
from lxml import etree
import pymongo
import sys

reload(sys)
sys.setdefaultencoding('utf-8')


def getpages(url, total):
    nowpage = int(re.search('(\d+)', url, re.S).group(1))
    urls = []

    for i in range(nowpage, total + 1):
        link = re.sub('(\d+)', '%s' % i, url, re.S)
        urls.append(link)

    return urls


def spider(url):
    html = requests.get(url)

    selector = etree.HTML(html.text)

    book_name = selector.x
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值