python网络爬虫初识_Python---网络爬虫初识
1. 网络爬虫介绍
来自wiki的介绍:
网络爬虫(英语:web crawler),也叫网上蜘蛛(spider),是一种用来自动浏览万维网的网络机器人。
但是我们在写网络爬虫时还要注意遵守网络规则,这样才能是我么使我们更好的利用其中的资源
爬虫访问网站的过程会消耗目标系统资源。不少网络系统并不默许爬虫工作。因此在访问大量页面时,爬虫需要考虑到规划、负载,还需要讲“礼貌”。 不愿意被爬虫访问、被爬虫主人知晓的公开站点可以使用robots.txt文件之类的方法避免访问。这个文件可以要求机器人只对网站的一部分进行索引,或完全不作处理。
虽然robots.txt只是一种网站主人对爬虫爬取的一种声明,但是博主希望大家可以遵守。
2. 爬虫流程
在此之后我们所用的都是python3.x,python2.x的另找其他。
基本流程:
使用request库获取目标url的html文档
使用浏览器打开网页源代码分析其中的元素节点
通过Beautiful Soup库或正则表达式获得想要的数据
将数据保存到本地或者数据库
3. requests库的安装
在cmd中,通过如下指令安装:
pip install requests
在pythonzh检验是否安装成功
import requests
介绍:
适合于人类使用的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.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)
是不是很简单。。。
python网络爬虫初识_Python---网络爬虫初识相关推荐
- python sub 不区分大小写_Python网络爬虫入门篇
1. 预备知识 学习者需要预先掌握Python的数字类型.字符串类型.分支.循环.函数.列表类型.字典类型.文件和第三方库使用等概念和编程方法. Python入门篇:https://www.cnblo ...
- python 爬虫框架_Python网络爬虫-scrapy框架的使用
1. Scrapy 1.1 Scrapy框架的安装 Scrapy是一个十分强大的爬虫框架,依赖的库比较多,至少需要依赖的库有Twisted .lxml和pyOpenSSL.在不同的平台环境下,它所依赖 ...
- python 爬虫论_Python网络爬虫(理论篇)
欢迎关注公众号:Python爬虫数据分析挖掘,回复[开源源码]免费获取更多开源项目源码 网络爬虫的组成 网络爬虫由控制节点,爬虫节点,资源库构成. 网络爬虫的控制节点和爬虫节点的结构关系 控制节点(爬 ...
- python网络爬虫学习_python网络爬虫学习笔记
介绍: 网络爬虫的名字非常有意思,英文名称web spider. 真得非常形象.蜘蛛结网为了获取食物,而我们的爬虫程序,也是为了获取网络上的资源. 这篇blog是本人学习过程中的记录.学习过程中,使用 ...
- python网络爬虫应用_python网络爬虫应用实战
原标题:python网络爬虫应用实战 Python这门编程语言包罗万象,可以说掌握了python,除了一些特殊环境和高度的性能要求,你可以用它做任何事. Python作为一门脚本语言,它灵活.易用.易 ...
- python网络爬虫应用_Python网络爬虫(requests模块应用1)
一.什么是requests模块? requests模块是python中原生的基于网络请求的模块,其主要作用是用来模拟浏览器发起请求.功能强大,用法简洁高效.在爬虫领域中占据着半壁江山的地位. 二.为什 ...
- python开发网络小工具_python 网络工具
书籍:掌握Python的网络和安全 Mastering Python for Networking and Security - 2018.pdf 简介 掌握Python的网络和安全 掌握Python ...
- python网络编程项目_python网络编程详解
最近在看<UNIX网络编程 卷1>和<FREEBSD操作系统设计与实现>这两本书,我重点关注了TCP协议相关的内容,结合自己后台开发的经验,写下这篇文章,一方面是为了帮助有需要 ...
- python网络编程项目_Python网络编程攻略
第1章套接字.IPv4和简单的客户端/服务器编程 本章攻略: 打印设备名和IPv4地址 获取远程设备的IP地址 将IPv4地址转换成不同的格式 通过指定的端口和协议找到服务名 主机字节序和网络字节序之 ...
- unet网络python代码详解_python网络编程详解
最近在看<UNIX网络编程 卷1>和<FREEBSD操作系统设计与实现>这两本书,我重点关注了TCP协议相关的内容,结合自己后台开发的经验,写下这篇文章,一方面是为了帮助有需要 ...
最新文章
- DeepKey:科学家提出一种基于脑纹独特性的多模态生物识别系统可以防范身份欺骗...
- 王爽《汇编语言第三版》实验10-1代码实现
- LinkdedList
- 静态页面实现include
- Oracle全文索引之三 检索
- 中科软java笔试题
- Mysql联表update数据
- 深度学习基础知识(八):神经网络基础之导数
- MAYA oceanShader/海洋(纹理)
- 原创 | 一文读懂机器学习中的shapley值方法
- 4.根据提示,完成下面的程序。#include<stdio.h>typedef struct date {int year;int month;int day;} Date;void
- 《你该认清你的恐惧,而不是目标》笔记
- 从简历被拒到收割今日头条offer经验总结
- 改善到底多大 FXAA画质游戏实测
- 怎么样引流加人?引流加人有什么技巧?引流加人用什么好
- 【125】Linux 中 ps -ef|grep和ps、grep详解
- 中国石油大学(北京)-《油气藏经营管理 》在线考试
- 人工智能历史上的重要一步:ChatGPT影响到谷歌地位?
- C++ STL常见容器
- FEM计算2D瞬态热传导方程