from lxml import etree import requests import csv fp=open('C://Users/Administrator/Desktop/lianxi/doubanbook.csv','w+',newline='',encoding='utf-8') writer=csv.writer(fp) writer.writerow(('name','url','author','publisher','date','price','rate','commen…
大年初二,忙完家里一些事,顺带有人交流爬取豆瓣图书top250 1.构造urls列表 urls=['https://book.douban.com/top250?start={}'.format(str(i) for i in range(0, 226, 25))] 2.模块 requests获取网页源代码 lxml 解析网页 xpath提取 3.提取信息 4.可以封装成函数 此处没有封装调用 python代码: #coding:utf-8 import sys reload(sys) sys.…
豆瓣网站很人性化,对于新手爬虫比较友好,没有如果调低爬取频率,不用担心会被封 IP.但也不要太频繁爬取. 涉及知识点:requests.html.xpath.csv 一.准备工作 需要安装requests.lxml.csv库 爬取目标:https://book.douban.com/top250 二.分析页面源码 打开网址,按下F12,然后查找书名,右键弹出菜单栏 Copy==> Copy Xpath 以书名“追风筝的人” 获取书名的xpath是://*[@id="content"…
开发环境:(Windows)eclipse+pydev+MongoDB 豆瓣TOP网址:传送门 一.连接数据库   打开MongoDBx下载路径,新建名为data的文件夹,在此新建名为db的文件夹,db文件夹即用于存储数据   在bin路径下输入配置信息-->mongod --dbpath D:\MongoDB\data\db (此处为存储文件路径) 再打开新的命令行窗口,输入-->mongo 注意:启动服务的命令行窗口不要关闭 打开可视化管理工具Robomongo,点击Connections…
开发环境:(Windows)eclipse+pydev 网址:https://book.douban.com/top250?start=0 from lxml import etree #解析提取数据 import requests #请求网页获取网页数据 import csv #存储数据 fp = open('D:\Pyproject\douban.csv','wt',newline='',encoding='UTF-8') #创建csv文件 writer = csv.writer(fp) w…
import requests from lxml import etree import re import pymysql import time conn= pymysql.connect(host='localhost',user='root',passwd='root',db='mydb',port=3306,charset='utf8') cursor=conn.cursor() headers={ #'User-Agent':'Nokia6600/1.0 (3.42.1) Symb…
# -*- coding: utf-8 -*- import requests import re import sys reload(sys) sys.setdefaultencoding('utf-8') class Spider(object): def __init__(self): print('开始爬取豆瓣图书top250的内容......') # 传入url,返回网页源代码 def getSourceCode(self, url): html = requests.get(url)…
上次介绍了beautifulsoup的使用,那就来进行运用下吧.本篇将主要介绍通过爬取豆瓣图书的信息,存储到sqlite数据库进行分析. 1.sqlite SQLite是一个进程内的库,实现了自给自足的.无服务器的.零配置的.事务性的 SQL 数据库引擎.它是一个零配置的数据库,这意味着与其他数据库一样,您不需要在系统中配置. 就像其他数据库,SQLite 引擎不是一个独立的进程,可以按应用程序需求进行静态或动态连接.SQLite 直接访问其存储文件. 在Mac是自带sqlite的,不需要重新安…
本文利用Python3爬虫抓取豆瓣图书Top250,并利用xlwt模块将其存储至excel文件,图片下载到相应目录.旨在进行更多的爬虫实践练习以及模块学习. 工具 1.Python 3.5 2.BeautifulSoup.xlwt模块 开始动手 首先查看目标网页的url: https://book.douban.com/top250?start=0, 然后我尝试了在代码里直接通过字符串连接仅改变”start=“后面的数字的方法来遍历所有的250/25 = 10页内容,但是后来发现不行,那样的话出…
基于上两篇文章的工作 [Python数据分析]Python3操作Excel-以豆瓣图书Top250为例 [Python数据分析]Python3操作Excel(二) 一些问题的解决与优化 已经正确地实现豆瓣图书Top250的抓取工作,并存入excel中,但是很不幸,由于采用的串行爬取方式,每次爬完250页都需要花费7到8分钟,显然让人受不了,所以必须在效率上有所提升才行. 仔细想想就可以发现,其实爬10页(每页25本),这10页爬的先后关系是无所谓的,因为写入的时候没有依赖关系,各写各的,所以用串…