Python---网络爬虫初识


1. 网络爬虫介绍

来自wiki的介绍:html

网络爬虫(英语:web crawler),也叫网上蜘蛛(spider),是一种用来自动浏览万维网的网络机器人。python

可是咱们在写网络爬虫时还要注意遵照网络规则,这样才能是我么使咱们更好的利用其中的资源web

爬虫访问网站的过程会消耗目标系统资源。很多网络系统并不默许爬虫工做。所以在访问大量页面时,爬虫须要考虑到规划、负载,还须要讲“礼貌”。 不肯意被爬虫访问、被爬虫主人知晓的公开站点可使用robots.txt文件之类的方法避免访问。这个文件能够要求机器人只对网站的一部分进行索引,或彻底不做处理。正则表达式

虽然robots.txt只是一种网站主人对爬虫爬取的一种声明,可是博主但愿你们能够遵照。数据库

2. 爬虫流程

在此以后咱们所用的都是python3.x,python2.x的另找其余。python3.x

基本流程:浏览器

  1. 使用request库获取目标url的html文档
  2. 使用浏览器打开网页源代码分析其中的元素节点
  3. 经过Beautiful Soup库或正则表达式得到想要的数据
  4. 将数据保存到本地或者数据库

3. requests库的安装

在cmd中,经过以下指令安装:网络

pip install requests

在pythonzh检验是否安装成功ide

import requests

介绍:svg

适合于人类使用的HTTP库,封装了许多繁琐的HTTP功能,极大地简化了HTTP请求所须要的代码量

基本用法:

方法 说明
requests.request() 构造一个请求,支撑一下各方法的基础方法
requests.get() 获取HTML网页的主要方法,对应HTTP的GET
requests.head() 获取HTML网页头的信息方法,对应HTTP的HEAD
requests.post() 向HTML网页提交POST请求方法,对应HTTP的POST
requests.put() 向HTML网页提交PUT请求的方法,对应HTTP的RUT
requests.patch() 向HTML网页提交局部修改请求,对应于HTTP的PATCH
requests.delete() 向HTML页面提交删除请求,对应HTTP的DELETE

requests中文文档

requests在使用的时候有什么忘了或者须要更高级的用法能够去查中文文档,这是requests库的开发者为咱们使用者提供的便利,感谢开发者!

咱们使用requests.get()来作一个简单的例子,咱们在这爬取一下百度(www.baidu.com)的html页面

#-*- coding:UTF-8 -*-
import requests

if __name__ == '__main__':
    target = 'https://www.baidu.com/'
    req = requests.get(url = target)
    print(req.text)

是否是很简单。。。

相关文章
相关标签/搜索