爬虫python能做什么-总算发现python爬虫能够干什么
网络爬虫另外一些不常使用的名字还有蚂蚁,自动索引,模拟程序或者蠕虫。下面是小编为您整理的关于python爬虫能够干什么,希望对你有所帮助。
python爬虫能够干什么
1.python爬虫可从网站某一个页面(通常是首页)开始,读取网页的内容,找到在网页中的其它链接地址,然后通过这些链接地址寻找下一个网页,这样一直循环下去,直到把这个网站所有的网页都抓取完为止。如果把整个互联网当成一个网站,那么网络蜘蛛就可以用这个原理把互联网上所有的网页都抓取下来。
2.网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁,自动索引,模拟程序或者蠕虫。
爬虫的基本流程:
用户获取网络数据的方式:
方式1:浏览器提交请求--->下载网页代码--->解析成页面
方式2:模拟浏览器发送请求(获取网页代码)->提取有用的数据->存放于数据库或文件中
爬虫要做的就是方式2;
1、发起请求
使用http库向目标站点发起请求,即发送一个Request
Request包含:请求头、请求体等
Request模块缺陷:不能执行JS 和CSS 代码
2、获取响应内容
如果服务器能正常响应,则会得到一个Response
Response包含:html,json,图片,视频等
3、解析内容
解析html数据:正则表达式(RE模块),第三方解析库如Beautifulsoup,pyquery等
解析json数据:json模块
解析二进制数据:以wb的方式写入文件
4、保存数据
数据库(MySQL,Mongdb、Redis)
文件
三、http协议 请求与响应
Request:用户将自己的信息通过浏览器(socket client)发送给服务器(socket server)
Response:服务器接收请求,分析用户发来的请求信息,然后返回数据(返回的数据中可能包含其他链接,如:图片,js,css等)
ps:浏览器在接收Response后,会解析其内容来显示给用户,而爬虫程序在模拟浏览器发送请求然后接收Response后,是要提取其中的有用数据。
四、 request
1、请求方式:
常见的请求方式:GET / POST
2、请求的URL
url全球统一资源定位符,用来定义互联网上一个唯一的资源 例如:一张图片、一个文件、一段视频都可以用url唯一确定
url编码
https://www.baidu.com/s?wd=图片
图片会被编码(看示例代码)
网页的加载过程是:
加载一个网页,通常都是先加载document文档,
在解析document文档的时候,遇到链接,则针对超链接发起下载图片的请求
3、请求头
User-agent:请求头中如果没有user-agent客户端配置,服务端可能将你当做一个非法用户host;
cookies:cookie用来保存登录信息
Python爬虫常用的几种数据提取方式
python爬虫的几种数据提取方式:正则 ,bs4,pyquery,xpath,cssselector。
知识点:
findall 返回的结果是列表套元组的形式
而search一般要加group(), groups(),
re.S 可以将正则的搜索域不再是一行,而是整个HTML字符串
.*? 非贪婪匹配 .*贪婪匹配
二, Beautifulsoup
obj = BeautifulSoup(html, "lxml")
BeautifulSoup将复杂HTML文档转换成一个复杂的树形结构,每个节点都是Python对象
知识点:
获得标签的某个属性: .get()
获得标签内部的文字: .string . strings .stripped_strings .get_text()
.string: 如果一个标签里面没有标签了,那么 .string 就会返回标签里面的内容。如果标签里面只有唯一的一个标签了,那么 .string 也会返回最里面的内容
.strings: 获取多个内容,返回结果是生成器,需要遍历获取
.stripped_strings输出的字符串中可能包含了很多空格或空行,使用 .stripped_strings可以去除多余空白内容
通过css筛选元素: .select()
.select():返回的是list
遍历文档树:
获取tag的子节点: .contents 返回的是list .children返回的是listiterator object
PyQuery
爬虫是什么?
如果我们把互联网比作一张大的蜘蛛网,数据便是存放于蜘蛛网的各个节点,而爬虫就是一只小蜘蛛,
沿着网络抓取自己的猎物(数据)爬虫指的是:向网站发起请求,获取资源后分析并提取有用数据的程序;
从技术层面来说就是 通过程序模拟浏览器请求站点的行为,把站点返回的HTML代码/JSON数据/二进制数据(图片、视频) 爬到本地,进而提取自己需要的数据,存放起来使用。
爬虫python能做什么-总算发现python爬虫能够干什么相关推荐
- 学了python可以做什么兼职,学python真的能做兼职吗??
学好Python可以做什么兼职 学会python可以做的兼职:1.爬虫首先,除了Python的语法基础的之外的必修课就是web开发和爬虫的内容了.如果是想依靠这两个方向来赚钱的话,就必须要清楚的知道开 ...
- 学了python可以做什么兼职,学python真的能做兼职吗
学好Python可以做什么兼职 学会python可以做的兼职:1.爬虫首先,除了Python的语法基础的之外的必修课就是web开发和爬虫的内容了.如果是想依靠这两个方向来赚钱的话,就必须要清楚的知道开 ...
- python可以做什么工作好-Python可以做什么工作?Python有哪些方向?
Python现在是一种相对流行的语言,可以做很多事情,可以从事很多工作,但是对于某些小白来说,他们不是很了解,但是他们更关心Python的就业情况.那么Python可以做什么工作呢?Python有哪些 ...
- python可以做什么工作-Python可以做什么工作?Python有哪些方向?
Python现在是一种相对流行的语言,可以做很多事情,可以从事很多工作,但是对于某些小白来说,他们不是很了解,但是他们更关心Python的就业情况.那么Python可以做什么工作呢?Python有哪些 ...
- 爬虫python能做什么 知乎,python网络爬虫能做什么
python爬虫能做什么 世界上80%的爬虫是基于Python开发的,学好爬虫技能,可为后续的大数据分析.挖掘.机器学习等提供重要的数据源.什么是爬虫? (推荐学习:Python视频教程)网络爬虫(又 ...
- python最适合做什么-总算明了python适合做什么
在学习完Python的基础知识之后,有很多朋友为自己接下来要干什么感到迷茫.不知道应该通过什么样的项目来锻炼自己编程水平和思维能力.接下来我就给大家说几个适合Python的新手项目和练手项目,Pyth ...
- 学python可以做什么知乎-Python学到什么程度可以面试工作?
0710更新: 不多说,上干货!!!最近得到了一张比较全面的Python图谱,直接分享给你们!!!(我看过,知识点还是很全面的,基础知识.数据分析.爬虫实战.后台开发实战以及人工智能实战项目,都包含了 ...
- python编程做什么工作-学习Python编程后在成都可以做哪些工作?
原标题:学习Python编程后在成都可以做哪些工作? Python被称为编程语言中的万能胶水,比如可以用来做爬虫,做网页,运维还有现在很火的人工智能Al都可以用上Python.一是Python有很多数 ...
- python可以做什么工作好-Python入门后,想要从事自由职业可以做哪方面工作?
Python入门后,想要从事自由职业可以做哪方面工作? 1.爬虫 很多人入门Python的必修课之一就是web开发和爬虫.但是这两项想要赚钱的话,就必须知道开发什么爬什么数据才能赚钱.如果你都不知道的 ...
最新文章
- 开发日记-20190905 关键词 Linux (Ubuntu) 下的Android模拟器:Genymotion
- python3.6.8下robot framework ride 测试环境搭建
- 用户退出登录清空cookie
- 音视频技术开发周刊 | 140
- 正则表达式匹配字符串的问题
- 任务调度及远端管理(基于Quartz.net)
- 前端学习(3166):react-hello-react之鼠标移入效果
- 机器学习算法总结--线性回归和逻辑回归
- JavaScript高级程序设计学习(四)之引用类型(续)
- Maven 模块管理
- Linux下网络抓包工具(ngrep)
- emos后台管理项目心得
- php网站微博帐号登录代码,redis+php实现微博(一)注册与登录功能详解
- 天天向上的力量python代码解释_python天天向上的力量
- 资源地址总览(实时更新中)
- Java校招面经_小米java校招面经,面试题整理(一面)
- C语言中 .c 和 .h 文件有什么关系?
- 软件测试,自学3个月出来就是高薪工作?你以为还是2019年以前?
- python实现图像差异性分析(标记并记录差异点)
- 一行Python代码生成酷炫/恶搞/表白二维码(内附源码)