Python
少年好建
精通各种语言的Hello World
展开
-
利用Python读取邮件 读取所有邮件、已读邮件、未读邮件 删除已读邮件
读取keyring密码前提是你已经通过yagmail设置好了密码,这里我们可以直接从keyring中读取密码:import keyringpassword=keyring.get_password("yagmail","[email protected]")Python读取邮件对于163、126邮箱,需要提前配置一下,访问:http://config.mail.163.com/settings/imap/[email protected],允许第三方客户端读取内容原创 2020-05-22 15:59:37 · 7446 阅读 · 7 评论 -
Scrapy爬虫框架的基本使用 创建spider工程和spider爬虫 scrapy基本命令
Srcapy介绍Scrapy是一个健壮的爬虫框架,可以从网站中提取需要的数据。是一个快速、简单、并且可扩展的方法。Scrapy使用了异步网络框架来处理网络通讯,可以获得较快的下载速度,因此,我们不需要去自己实现异步框架。并且,Scrapy包含了各种中间件接口,可以灵活的完成各种需求。所以我们只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页上的各种内容。Scrapy爬虫的优点很多:内建的css选择器和xpath表达式。基于IPython交互shell,方便编写爬虫和debug。原创 2020-05-22 15:57:25 · 1664 阅读 · 0 评论 -
Scrapy爬虫框架 通过下载器中间件进行添加代理和更换UA
中间件:1.下载中间件 2.爬虫中间件作用:系在中间件是处于引擎和下载器之间。批量拦截请求和响应。拦截请求:1.请求头的伪装 2.添加代理拦截响应:篡改响应数据(无用)。Scrapy中使用下载中间件,需要编写一个Downloader Middlewares和我们编写一个pipeline一样,定义一个类,然后在settings中开启。默认情况在middlewares.py文件中是存在下载中间件和爬虫中间件的,这里我们不用可以删掉,这篇文章主要介绍下载中间件的使用。我们可以精简一下middlew原创 2020-05-22 15:54:07 · 1382 阅读 · 2 评论 -
Scrapy 实现模拟登录-抓取登录之后的页面 获取马蜂窝旅游的个人中心页面
为什么需要登录?为了我们可以获取到登陆后的页面。我们回顾requests是如何模拟登录的,有两种方式,第一种是直接携带cookies请求页面,第二种是找接口发送Post请求,然后存储Cookies,那么Selenium是如何模拟登录的,同样是找到对应的登陆页面,传入账户和密码等参数,登录之后获取Cookies,然后添加cookies,并请求登录之后的页面。Scrapy实现登录,也有两种方式,第一种就是直接携带Cookies,第二种是找到发送Post请求的url地址,带上账户和密码等信息,发送请求。S原创 2020-05-22 15:50:55 · 465 阅读 · 0 评论 -
Scrapy爬虫框架进行数据解析 使用Scrapy内建的Xpath进行数据解析
按照前面几篇文章的做法,创建scrapy工程,进入到spiders文件夹中创建爬虫,然后修改settings.py文件,让它不遵从robots协议并更换UA,指定日志等级为error:USER_AGENT = 'Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)'ROBOTSTXT_OBEY = FalseLOG_LEVEL='ERROR' 爬虫文件还是跟前面的一样,不过这里需要进行原创 2020-05-22 15:45:53 · 388 阅读 · 0 评论 -
Scrapy爬虫框架实现增量式(数据更新)数据抓取 借助redis的set类型
借助redis的set实现增量式爬虫。增量式意思就是监测网站数据更新情况,爬取最新更新出来的数据,核心就是去重。这里我们只通过redis的set集合来实现。实现增量:—-对爬取数据的url进行监测,使用一个记录表存储爬取过的数据的url,但凡记录表中存有的url,说明url对应数据已经爬取过了,否则表示没有爬取过为新数据。—-记录表:redis的set集合充当记录表,自带去重功能。插入成功为会返回1,失败输入的数据已经存在,返回0。以:https://www.4567kan.com/frim/i原创 2020-05-21 21:22:39 · 806 阅读 · 0 评论