本文利用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页爬的先后关系是无所谓的,因为写入的时候没有依赖关系,各写各的,所以用串…
# -*- 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)…
继上一篇[Python数据分析]Python3操作Excel-以豆瓣图书Top250为例 对豆瓣图书Top250进行爬取以后,鉴于还有一些问题没有解决,所以进行了进一步的交流讨论,这期间得到了一只尼玛的帮助与启发,十分感谢! 上次存在的问题如下: 1.写入不能继续的问题 2.在Python IDLE中明明输出正确的结果,写到excel中就乱码了. 上述两个问题促使我改换excel处理模块,因为据说xlwt只支持到Excel 2003,很有可能会出问题. 虽然“一只尼玛”给了一个Validate函…
大年初二,忙完家里一些事,顺带有人交流爬取豆瓣图书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.…
Python - openpyxl 读写操作Excel   openpyxl特点   openpyxl(可读写excel表)专门处理Excel2007及以上版本产生的xlsx文件,xls和xlsx之间转换容易 注意:如果文字编码是“gb2312” 读取后就会显示乱码,请先转成Unicode 1.openpyxl 读写单元格时,单元格的坐标位置起始值是(1,1),即下标最小值为1,否则报错! tableTitle = ['userName', 'Phone', 'age', 'Remark'] #…
豆瓣网站很人性化,对于新手爬虫比较友好,没有如果调低爬取频率,不用担心会被封 IP.但也不要太频繁爬取. 涉及知识点:requests.html.xpath.csv 一.准备工作 需要安装requests.lxml.csv库 爬取目标:https://book.douban.com/top250 二.分析页面源码 打开网址,按下F12,然后查找书名,右键弹出菜单栏 Copy==> Copy Xpath 以书名“追风筝的人” 获取书名的xpath是://*[@id="content"…
从豆瓣图书Top250抓取数据,并通过词云图展示 导入库 from lxml import etree #解析库 import time #时间 import random #随机函数 import pandas as pd import requests #请求库 import jieba #导入结巴分词 from pyecharts.charts import WordCloud from pyecharts import options as opts 抓取数据 #循环构造网址 def f…
本篇主要是通过对豆瓣图书<平凡的世界>短评进行抓取并进行分析,并用snowNLP对其进行情感分析. 用到的模块有snowNLP,是一个python库,用来进行情感分析. 1.抓取数据 我们把抓取到的数据存储到sqlite,先建表,结构如下: CREATE TABLE comment( id integer PRIMARY KEY autoincrement NOT NULL, commentator VARCHAR(50) NOT NULL, star INTEGER NOT NULL, ti…
python操作excel方法 1)自身有Win32 COM操作office但讲不清楚,可能不支持夸平台,linux是否能用不清楚,其他有专业处理模块,如下 2)xlrd:(读excel)表,xlrd读大表效率高于openpyxl 3)xlwt:(写excel)表, xlrd和xlwt对版本上兼容不太好,很多新版excel有问题. 新版excel处理: openpyxl(可读写excel表)专门处理Excel2007及以上版本产生的xlsx文件,xls和xlsx之间转换容易 注意:如果文字编码是…
python 对Excel操作常用的主要有xlwt.xlrd.openpyxl ,前者xlwt主要适合于对后缀为xls比较进行写入,而openpyxl主要是针对于Excel 2007 以上版本进行操作,也就是对后缀为xlsx进行操作. Excel 主要有三大元素,工作簿,Sheet 页,单元格,一个工作簿可以包含多个Sheet页面,而Sheet页由N多个单元格组成,而单元格主要用来存储数据: 一.安装插件 pip install openpyxl 二.创建Excel文件 操作excel之前,首先…
python操作excel主要用到xlrd和xlwt这两个库,即xlrd是读excel,xlwt是写excel的库可从这里下载https://pypi.python.org/pypi.下面分别记录python读和写excel. python读excel——xlrd import xlrd data = xlrd.open_workbook('host_list02.xlsx') # 获取sheets数目: print (data.nsheets) # 获取sheets列表: print(data…
python操作excel使用xlrd.xlwt和xlutils模块,xlrd模块是读取excel的,xlwt模块是写excel的,xlutils是用来修改excel的.这几个模块可以使用pip安装, 也可以下载安装包,进入包内,用python命令安装:python setup.py install pip install xlrd pip install xlwt pip install xlutils 具体使用方法如下: 一.xlrd模块,xlrd模块用来读excel,具体用法如下: imp…
现代生活中,我们很难不与excel表打交道,excel表有着易学易用的优点,只是当表中数据量很大,我们又需要从其他表册中复制粘贴一些数据(比如身份证号)的时候,我们会越来越倦怠,毕竟我们不是机器,没法长时间做某种重复性的枯燥操作.想象这样一个场景,我们有个几千行的表要填,需要根据姓名输入其对应的身份证号,但之前我们已经做过一个类似的表,同样的一些人的姓名跟身份证号是完整的,那么我们就需要通过一个个查找姓名,然后把身份证号码复制到我们当前要做的表里去. 当我日复一日重复着这些操作的时候,我都很想有…
openpyxl特点   openpyxl(可读写excel表)专门处理Excel2007及以上版本产生的xlsx文件,xls和xlsx之间转换容易 注意:如果文字编码是“gb2312” 读取后就会显示乱码,请先转成Unicode 1.openpyxl 读写单元格时,单元格的坐标位置起始值是(1,1),即下标最小值为1,否则报错! tableTitle = ['userName', 'Phone', 'age', 'Remark'] # 维护表头 # if row < 1 or column <…
一.xlrd读取Excel文件 用xlrd进行读取比较方便,流程和平常手动操作Excel一样,打开工作簿(Workbook),选择工作表(sheets),然后操作单元格(cell). 例子:要打开当前目录下名为”aaa.xlsx”的Excel文件,选择第一张工作表,然后读取第一行的全部内容并打印出来. import xlrd data = xlrd.open_workbook('aaa.xlsx') # 打开文件 table = data.sheets()[0] # [0]表示读取第一张表 da…
这一段时间,一直在折腾Python爬虫.已有的文件记录显示,折腾爬虫大概个把月了吧.但是断断续续,一会儿鼓捣python.一会学习sql儿.一会调试OpenCV,结果什么都没学好.前几天,终于耐下心来,决定还是用python做一个小东西.想了想,决定从爬"豆瓣电影Top250"开始.大学的时候,经常根据豆瓣评分选电影.大二大三的时候,有段时间,基本上一天一部地刷.那时候,也真清闲... 后来top电影看的差不多了,对国产片基本上没什么胃口.后来就改行看动漫来消遣,还记得考研那会儿,追&…
一.项目背景 随着时代的发展,国人对于阅读的需求也是日益增长,既然要阅读,就要读好书,什么是好书呢?本项目选择以豆瓣图书网站为对象,统计其排行榜的前250本书籍. 二.项目介绍 本项目使用Python爬虫技术统计豆瓣图书网站上排名前250的书籍信息,包括书名.作者.出版社.出版日期.价格.评星.简述信息 将获取到的信息存储在Mysql数据库中 三.项目流程 3.1 分析第一页 第一页地址为:https://book.douban.com/top250,打开后页面呈现为如下: 我们需要获得的信息为…
一个很简单的爬虫. 从这里学习的,解释的挺好的:https://xlzd.me/2015/12/16/python-crawler-03 分享写这个代码用到了的学习的链接: BeautifulSoup官方文档 requests文档 codecs with……as……的解释 .join函数 .format函数 其他的一些东西在代码里面有详细注释. # encoding = utf-8 import codecs import requests from bs4 import BeautifulSo…
此文章非本人 一.安装xlrd模块 到python官网下载http://pypi.python.org/pypi/xlrd模块安装,前提是已经安装了python 环境. 二.使用介绍 1.导入模块 import xlrd 2.打开Excel文件读取数据 data = xlrd.open_workbook('excelFile.xls') 默认操作桌面上的excel 3.使用技巧 获取一个工作表         table = data.sheets()[0]          #通过索引顺序获取…
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取 http://note.youdao.com/noteshare?id=3054cce4add8a909e784ad934f956cef 一.openpyxl的使用 pip install openpyxl 第一步:打开工作簿(读取Excel文件中所有的数据保存为工作簿对象) workbook = op…
首先说明一下 在处理大文件时,openpyxl 的性能不如 xlrd,xlwt等.所以可以读取的时候使用xlrd,写的时候用openpyxl. 今天遇到一个使用场景:excel存放的是一条条用例,包含表头,需要将这些用例读取出来.单元格存放的有字典等类型. 实现见代码: 大体思路是,先获取表头作为列表1:list1. 然后再将后续各行数据获取:listn,使用dict(zip(list1,listn),组合成字典. 最后将字典存为List. # FileName : Excel.py # Aut…
python 与excel 安装模块 本例子中使用的模块为: openpyxl 版本为2.4.8 安装方法请参看以前发表的文章(Python 的pip模块安装方法) Python处理Excel表格 使用模块:openpyxl(2.4.8) 基本使用方法 1.首先导入模块:import openpyxl 2.打开一个已经存在的excel文件: wb=openpyxl.load_workbook('example.xlsx') (文件和脚本放在同一个目录下,如果不是的话需要加上路径 wb=wpenp…
def initExcel(): file_path = "test.xlsx" file = load_workbook(file_path) table = file["Sheet1"] #写入 for i in range(2, 22): table["C" + str(i)] = "123" file.save(file_path) # 读取 print(table["E33"].value) fi…
安装openpyxl pip install openpyxl 简单示例 from openpyxl import Workbook #创建一个工作薄对象,也就是创建一个excel文档 wb = Workbook() #指定当前显示(活动)的sheet对象 ws = wb.active # 给A1单元格赋值 ws['A1'] = 42 # 一行添加多列数据 ws.append([1, 2, 3]) # 保存excel wb.save("sample.xlsx") 使用openpyxl的…
import pandas as pd #导入pandas import matplotlib.pyplot as plt #导入matplotlib from pylab import * mpl.rcParams['font.sans-serif'] = ['SimHei'] mpl.rcParams['axes.unicode_minus'] = False %matplotlib inline 数据读取与索引 bra = pd.read_csv('data/bra.csv') bra.h…
废话不多说,看代码,不懂的留言. from openpyxl import * class ExcelUtil: ''' 读取excel文件内容''' def create_work_book(self, title, index, maxRow, maxColumn, fileName): """ :param title: 表名称, :param index: 表所处位置(第一位从0开始) :param maxRow: 创建的最大行数 :param maxColumn:…
1.安装openpyxl模块: 在cmd命令窗执行命令 pip install openpyxl    安装openpyxl模块 from openpyxl import load_workbook if __name__ == '__main__': # 加载Excel文件,返回工作簿对象 wb = load_workbook(r'E:\tmp\test_data.xlsx') # 所有工作表的名字 ret = wb.sheetnames print(ret) # 访问工作表对象 ws = w…
一.往Excel中写数据 使用pip install xlwt安装xlwt模块,用xlwt模块进行对Excel进行写数据. import xlwt # book = xlwt.Workbook() # sheet = book.add_sheet('students') # # sheet.write(0, 0, 'id') # sheet.write(0, 1, 'name') # sheet.write(0, 2, 'age') # # sheet.write(1, 0, '1') # sh…
第一次爬取的网站就是豆瓣电影 Top 250,网址是:https://movie.douban.com/top250?start=0&filter= 分析网址'?'符号后的参数,第一个参数'start=0',这个代表页数,'=0'时代表第一页,'=25'代表第二页...以此类推 一.分析网页: 网页图片 明确要爬取的元素 :排名.名字.导演.评语.评分,在这里利用Chrome浏览器,查看元素的所在位置 每一部电影信息都在<li></li>当中 爬取元素的所在位置 分析完要爬…