2,简单的Python爬虫
前言
根据上一篇 1,Python爬虫环境的安装我们已经在本地安装好了Python环境,那么这一篇就开始学习如何用Python来爬虫!
环境:操作系统:Windows10
IDE: PyCharm2018.1
解释器:python3.6
1,只需短短4行
或许Python爬虫给大家的感觉就是比较高级,比较牛逼的一项技术,而其实呢,它的核心代码就只有以下几行!(至少对于初学者来说,只需要知道它如何使用)
import requests # 导入requests模块。如果报错,就是没有安装该模块;安装:鼠标点击红色部分->【ALT+回车】->回车。或在命令行使用pip install requests安装。 url = "http://www.baidu.com" # 要爬取网站的网址,一定要加http://
page = requests.get(url) # 模拟请求(与浏览器原理相同)
print(page.text) # 输出网站的源码(HTML代码)
2,对比
一开始大家(包括我自己)接触比较多的可能是urllib和urllib3;python2用的是urllib和urllib2,在python3中已经没有urllib2了,所以在看教程的时候一定要看清是python2还是python3。
其实用哪个库都没有太大关系,因为他们其实都是在底层实现了HTTP协议,然后自己再把接口封装以下,理解了原理其实都是差不多的;但是推荐大家使用requests库(我看很多大牛都推荐这个),他是个第三方库(不是python自家的),所以需要安装,代码中给出了安装方法。这个库给我的感觉就是使用起来更加简单,可读性很好,比较符合Python的风格,大牛们推荐他可能还有其他原因,有待学习!
3,解析
所谓爬虫,其实也就是在互联网这张大网中筛选我们需要的信息。上面的代码只是把整个页面的内容下载下来了,并没有什么实际作用。而我们实际需要的是其中的一些图片或者某些文字,那就需要对这些下载下来的内容进行解析了,最简单粗暴的方法是使用正则(re)表达式来匹配(这是必备的,网上有很多学习教程);而更好的方法是先使用xpath(一种解析html文档的语法)获取想要的内容,然后再用re处理获取的内容,使内容更符合我们需要。
4,要学什么
上面是让大家更好地理解爬虫,和基本步骤;下面就是初学需要学些什么东西:
爬虫三部曲:
1,下载页面:使用requests下载网站页面;学习requests模块的基本使用。
2,解析页面:在下载下来的页面中获取想要的信息;学习lxml模块,re模块,xpath语法和re语法的基本使用。
3,保存信息:把解析后的信息保存到本地(先学会保存到Excel表);学习xlwt模块。
2,简单的Python爬虫的更多相关文章
- 一个简单的python爬虫程序
python|网络爬虫 概述 这是一个简单的python爬虫程序,仅用作技术学习与交流,主要是通过一个简单的实际案例来对网络爬虫有个基础的认识. 什么是网络爬虫 简单的讲,网络爬虫就是模拟人访问web ...
- 一个简单的python爬虫,爬取知乎
一个简单的python爬虫,爬取知乎 主要实现 爬取一个收藏夹 里 所有问题答案下的 图片 文字信息暂未收录,可自行实现,比图片更简单 具体代码里有详细注释,请自行阅读 项目源码: # -*- cod ...
- 简单的python爬虫教程:批量爬取图片
python编程语言,可以说是新型语言,也是这两年来发展比较快的一种语言,而且不管是少儿还是成年人都可以学习这个新型编程语言,今天南京小码王python培训机构变为大家分享了一个python爬虫教程. ...
- 简单的python爬虫--爬取Taobao淘女郎信息
最近在学Python的爬虫,顺便就练习了一下爬取淘宝上的淘女郎信息:手法简单,由于淘宝网站本上做了很多的防爬措施,应此效果不太好! 爬虫的入口:https://mm.taobao.com/json/r ...
- 【Python学习笔记三】一个简单的python爬虫
这里写爬虫用的requests插件 1.一般那3.x版本的python安装后都带有相应的安装文件,目录在python安装目录的Scripts中,如下: 2.将scripts的目录配置到环境变量pa ...
- 一个简单的python爬虫,以豆瓣妹子“http://www.dbmeizi.com/category/2?p= ”为例
本想抓取网易摄影上的图,但发现查看html源代码时找不到图片的url,但firebug却能定位得到.(不知道为什么???) 目标是抓取前50页的爆乳图,代码如下: import urllib2,url ...
- 一个简单的python爬虫(转)
# -*- coding: utf-8 -*- #--------------------------------------- # 程序:百度贴吧爬虫 # 版本:0.1 # 作者:why # 日期: ...
- 一个简单的Python爬虫
写了一个抓taobao图片的爬虫,全是用if,for,while写的,比较简陋,入门作品. 从网页http://mm.taobao.com/json/request_top_list.htm?type ...
- 简单的python爬虫实例
目标网站:https://www.quanjing.com/category/1286521/2.html 爬取搜索出来的所有“中东人”的图片: 先看一下源代码,找到存放图片链接的地方,在源代码最下面 ...
随机推荐
- 外网主机远程ssh局域网Linux
最近,公司有台配置极高的主机盒子(i7,32G,512G),组长让我装上kali,平时渗透测试时可以用,其余时间归我了,这么高配置的机器,怎么舍得让它吃灰呢 .所以我就去研究了一下,如何远程访问局域网 ...
- C语言进阶——结构体,联合,枚举
----------------------------------------------------------我是一条划分线----------------------------------- ...
- xlwings excel(四)
前言 当年看<别怕,Excel VBA其实很简单>相见恨晚,看了第一版电子版之后,买了纸质版,然后将其送人.而后,发现出了第二版,买之收藏.之后,发现Python这一编程语言,简直是逆天, ...
- c#数字图像处理(十一)图像旋转
如果平面上的点绕原点逆时针旋转θº,则其坐标变换公式为: x'=xcosθ+ysinθ y=-xsinθ+ycosθ 其中,(x, y)为原图坐标,(x’, y’)为旋转后的坐标.它的逆变换公式为 ...
- 在 Ubuntu 上安装 K8S教程
在 Ubuntu 上安装 K8S教程 1,更新系统源 如果系统本身自带得镜像地址,服务器在国外,下载速度会很慢,可以打开 /etc/apt/sources.lis 替换为国内得镜像源. apt upg ...
- Linux 常用工具iptables
iptables简介 netfilter/iptables(简称为iptables)组成Linux平台下的包过滤防火墙,与大多数的Linux软件一样,这个包过滤防火墙是免费的,它可以代替昂贵的商业防火 ...
- Java练习题1
题目1: 编程实现,现在有如下的一个数组: int oldArr[] = {1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5}; 要求将以上数组中值为0的项去掉,将不为0的值存入一个新的 ...
- ROC 曲线
Receiver Operating Characteristic (接收机操作特性曲线) 是以虚警率为横轴,以击中率为纵轴,长成如下模样: 所谓击中率(hit)是指将正样本判断为正样本的比例,而虚警 ...
- ProxySQL 基础篇
1.ProxySQL 介绍 ProxySQL 是基于 MySQL 的一款开源的中间件的产品,是一个灵活的 MySQL 代理层,可以实现读写分离,支持 Query 路由功能,支持动态指定某个 SQL 进 ...
- 命令行开启WIFI
netsh wlan set hostednetwork allow //netsh wlan set hostednetwork mode=disallow netsh wlan set hos ...