分类: 数据采集

快速掌握Python Selenium Web自动化:1、搭建Selenium环境

1.1、Selenium是什么 Selenium是什么,相信从事自动化测试的同学或者有过Python爬虫经历的同学都会有了解。 Selenium是一个Web自动化测试软件, 正如Selenium官网所言:Selenium主要是为了测试目的而进行自动化的Web应用程序,但是当然并不限于此,一些基于We...

各省公考来临,使用Python爬取一波人民日报时评助力正在申论备考的你

各省的公务员考试都已经进入了报名阶段,很多报考了的同学也都在准备进行行测和申论的复习备考。 对于申论,很多同学都会选择一边做题一边看新闻联播、人民日报等官方媒体渠道的方式来备考。 多阅读和观看新闻联播、人民日报等官方媒体,可以提高对时政的掌握,以及了解官方对某些事物的具体态度。 而人民日报时评和社论...

分类目录: 数据采集编程

标签: Python爬虫

通过修改User-Agent标识将PhantomJS伪装成Chrome浏览器

在写爬虫的过程中,出于系统环境或是效率的问题,我们经常使用PhantomJS作为Selenium操纵的浏览器webdriver,而不是直接使用Chrome或FireFox的webdriver,尽管后者更加直观。 PhantomJS的优点虽然很多,但是缺点却也不少,有一个不能称之为缺点的缺点就是,Ph...

Python爬虫入门实战八:数据储存——MongoDB与MySQL

好久没更新了,今天填一个坑。 前面的文章里写的爬虫都是直接把爬取的数据打印出来。在实际的应用中,当然不能这么做,我们需要将数据存储起来。存储数据的方式有很多中,比如存储在文本文件中,或者是存储在数据库中。 为了使用数据的便捷性,我们选择将数据存储在数据库中。 数据库主流的两种类型为:SQL(关系型数...

Python爬虫入门实战七:使用Selenium--以抓取QQ空间好友说说为例

前面我们接触到的,都是使用requests+BeautifulSoup组合对静态网页进行请求和数据解析,若是JS生成的内容,也介绍了通过寻找API借口来获取数据。 但是有的时候,网页数据由JS生成,API借口又死活找不着或者是API借口地址随机变换,时间不等人。那就只能使用Selenium了。 一、...

【我爱背单词】用Python提炼3000英语新闻高频词汇

学英语,无论目的何在,词汇量总是一个绕不过去的坎,没有足够的词汇量,都难以用文法来组词造句。 前段时间,恶魔的奶爸提供了几份偏向于各个领域的高频词汇,很是不错。 最近用Python写爬虫入门教程的时候,碰到过几个英文网站,便有了统计一份网站英文单词词频的念头。 3000高频单词库说明: 来源:htt...

Python爬虫实战入门六:提高爬虫效率—并发爬取智联招聘

之前文章中所介绍的爬虫都是对单个URL进行解析和爬取,url数量少不费时,但是如果我们需要爬取的网页url有成千上万或者更多,那怎么办? 使用for循环对所有的url进行遍历访问? 嗯,想法很好,但是如果url过多,爬取完所有的数据会不会太过于耗时了? 对此我们可以使用并发来对URL进行访问以爬取数...

Python爬虫实战入门五:获取JS动态内容—爬取今日头条

之前我们爬取的网页,多是HTML静态生成的内容,直接从HTML源码中就能找到看到的数据和内容,然而并不是所有的网页都是这样的。 有一些网站的内容由前端的JS动态生成,由于呈现在网页上的内容是由JS生成而来,我们能够在浏览器上看得到,但是在HTML源码中却发现不了。比如今日头条: 浏览器呈现的网页如下...

Python爬虫实战入门四:使用Cookie模拟登录——获取电子书下载链接

在实际情况中,很多网站的内容都是需要登录之后才能看到,如此我们就需要进行模拟登录,使用登录后的状态进行爬取。这里就需要使用到Cookie。 现在大多数的网站都是使用Cookie跟踪用户的登录状态,一旦网站验证了登录信息,就会将登录信息保存在浏览器的cookie中。网站会把这个cookie作为验证的凭...

Python爬虫实战入门三:简单的HTML解析——爬取腾讯新闻

上一章咱们使用Python实现了一个简单的HTTP请求,瞧着简单,爬虫就是模拟人打开一个个URL浏览一个个网页来爬取数据的,一个成功的HTTP请求,就是一个爬虫的基础。 接下来,咱们以一个实际的例子:爬取百度新闻,来介绍使用BeautifulSoup对HTML进行解析处理。 爬取腾讯新闻 1、寻找数...

Python爬虫实战入门二:从一个简单的HTTP请求开始

一、为什么从HTTP请求开始 无论我们通过浏览器打开网站、访问网页,还是通过脚本对URL网址进行访问,本质上都是对HTTP服务器的请求,浏览器上所呈现的、控制台所显示的都是HTTP服务器对我们请求的响应。 以打开我的个人网站为例,我们在地址栏输入“zmister.com”,浏览器上呈现的是下图: z...

如何提高爬虫效率?Python下简单的进程、线程效率对比

在爬取海量的网络数据时,一方面我们需要确保爬虫不被网站服务器封掉,一方面也要提高爬虫的采集效率。 避免爬虫不被封掉,一般我们通过大量的代理IP构成代理池,通过代理来访问采集的网站,而对于如何提高爬虫的采集效率,就有很多种方法,比如:使用多进程、多线程、分布式、协程等等。 个人在实际的爬虫使用中,出于...