lxml

Python爬取南京市往年天气预报,使用pyecharts进行分析

北城余情 提交于 2020-11-21 03:31:44
上一次分享了使用matplotlib对爬取的豆瓣书籍排行榜进行分析,但是发现python本身自带的这个绘图分析库还是有一些局限,绘图不够美观等,在网上搜索了一波,发现现在有很多的支持python的绘图库可以使用,本次尝试使用pyecharts对爬取的数据进行分析,然后发现这个库实在是太好用了,生成的库也很好看,还能生成动态图,简直是进行数据分析的一大神器! pyecharts: pyecharts 是一个封装百度开源图表库echarts的包,使用 pyecharts 可以生成独立的网页,也可以在flask、django中集成使用。 本次爬取的首页地址是: http://www.tianqihoubao.com/lishi/nanjing.html 爬取步骤: 爬取主网页,获取进入每个南京市具体年份月份的天气数据的链接 爬取上方获取的具体链接的数据 存储数据 对数据进行筛选后使用pyecharts进行分析 话不多说,马上开始吧! 步骤一 从上图可知,我们需要先获取进入每个具体月份的链接,才能爬取想要的数据,所以首先定义获取具体链接的函数,然后在爬取会方便很多;查看网页源代码查找目标所在位置,本次我依然是使用lxml库来进行数据的爬取(PS:感觉习惯了lxml其他库就不好用了),这里需要注意的是,我是将获得的结果一个一个的存入列表,这种方法很笨,但作为菜鸟的我确实不知道其他方法了

python3.5 之Scrapy环境安装

柔情痞子 提交于 2020-11-15 06:55:46
python3.5 之Scrapy环境安装 1.通过pip安装Scrapy框架 执行命令 pip install Scrapy 但总是失败 查阅相关安装文档 http://doc.scrapy.org/en/latest http://scrapy-chs.readthedocs.io/zh_CN/latest/index.html 但是网站打不开 于是我就搜索“scrapy python3.5”借鉴别人的文档方法如下 参阅 : http://blog.csdn.net/c406495762/article/details/60156205 3.10 一步一步安装如下: (1)登陆 http://www.lfd.uci.edu/~gohlke/pythonlibs/ ,Ctrl+F搜索Lxml、Twisted、Scrapy,下载对应的版本。类如我是python3.5的对应Lxml是lxml-4.1.1-cp35-cp35m-win_amd64.whl 下载后放入D:\360安全浏览器下载\Scrapy (2)DOS下进入下载路径 D:\360安全浏览器下载\Scrapy (3)开始安装 注:依次安装 lxml-4.1.1-cp35-cp35m-win_amd64.whl,Twisted-17.9.0-cp35-cp35m-win_amd64.whl,最后Scrapy-1.5.0

Python3.5下安装&测试Scrapy

我与影子孤独终老i 提交于 2020-11-15 00:18:14
1、引言    Scrapy框架结构清晰,基于twisted的异步架构可以充分利用计算机资源,是做爬虫必备基础,本文将对Scrapy的安装作介绍。 2、安装lxml   2.1 下载地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted  选择对应python3.5的lxml库 2.2 如果pip的版本过低,先升级pip: python -m pip install -U pip 2.3 安装lxml库(先将下载的库文件copy到python的安装目录,按住shift键并鼠标右击选择“在此处打开命令窗口”) pip install lxml-4.1.1-cp35-cp35m-win_amd64.whl 看到出现successfully等字样说明按章成功。 3、 安装Twisted库 3.1 下载链接:https://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted  选择对应python3.5的库文件    3.2 安装 pip install Twisted-17.9.0-cp35-cp35m-win_amd64.whl   看到出现successfully等字样说明按章成功。 Note:部分机器可能安装失败,可以尝试将 Twisted-17.9.0-cp35-cp35m-win

python多线程爬取图片二

那年仲夏 提交于 2020-11-02 15:40:24
上一篇的多线程是使用类创建的,这一次使用函数创建多线程,还是同一个网站 https://www.quanjing.com/category/1286521/1.html, 代码如下: 1 # 多线程,自动创建文件夹,每个页面单独存储一个文件夹 2 3 import requests 4 import threading 5 import re 6 import time 7 import queue 8 import os 9 from bs4 import BeautifulSoup 10 11 12 string = ' https://www.quanjing.com/category/1286521/ ' 13 url_queue = queue.Queue() 14 pipei = re.compile( ' lowsrc="(.*?)" m= ' )        # 定义正则表达式,匹配出每一张图片的链接 15 16 17 def get_url(page):          # 根据传入的页面数,创建1-page每个页面的url 18 for i in range(1, page+1 ): 19 url = string + str(i) + ' .html '      # 拼接url 20 url_queue.put(url)            #

一篇文章教会你利用Python网络爬虫获取分类图片

北慕城南 提交于 2020-11-01 19:00:25
【一、项目背景】 博海拾贝是一支互联网从业者在线教育的团队,扎根于中国教育行业以及互联网行业的创新和眼球中,打造专业体系化的互联网人在线教育平台。精心创作许多精彩的文章,提供了很多有趣的图片。 今天来教大家如何使用Python来爬取博海拾贝的图片,分类保存,写入文档。 【二、项目目标】 创建一个文件夹, 分类保存所有文章图片。下载成功,结果显示控制台。 【三、项目分析】 1、如何找到真正访问的地址,多网页请求? 滑动鼠标,观察网站,右键F12 。鼠标滚轮滑动加载新内容。如图: 点开随机网页 , 点开Request URL ,观察网址的规律。 https://bh.sb/page/1/ https://bh.sb/page/2/ https://bh.sb/page/3/ https://bh.sb/page/4/ 观察到,每增加一页page/{}/自增加1,用{}代替变换的变量,再用for循环遍历这网址,实现多个网址请求。 2. 反爬处理 1)获取正常的 http请求头,并在requests请求时,设置这些常规的http请求头。 2)使用 fake_useragent ,产生随机的UserAgent进行访问。 【四、涉及的库和网站】 1、网址如下: https://www.doutula.com/photo/list/?page={} 2、涉及的库: requests 、 lxml

Python网络爬虫入门篇

六眼飞鱼酱① 提交于 2020-11-01 15:12:15
1. 预备知识 学习者需要预先掌握Python的数字类型、字符串类型、分支、循环、函数、列表类型、字典类型、文件和第三方库使用等概念和编程方法。 Python入门篇: https://www.cnblogs.com/wenwei-blog/p/10592541.html 2. Python爬虫基本流程 a. 发送请求 使用http库向目标站点发起请求,即发送一个Request,Request包含:请求头、请求体等。 Request模块缺陷:不能执行JS 和CSS 代码。 b. 获取响应内容 如果requests的内容存在于目标服务器上,那么服务器会返回请求内容。 Response包含:html、Json字符串、图片,视频等。 c. 解析内容 对用户而言,就是寻找自己需要的信息。对于Python爬虫而言,就是利用正则表达式或者其他库提取目标信息。 解析html数据:正则表达式(RE模块),第三方解析库如Beautifulsoup,pyquery等 解析json数据:json模块 解析二进制数据:以wb的方式写入文件 d. 保存数据 解析得到的数据可以多种形式,如文本,音频,视频保存在本地。 数据库(MySQL,Mongdb、Redis) 文件 3. Requests库入门 Requests是用python语言基于urllib编写的,采用的是Apache2