最详细的python爬虫入门教学,一篇入门爬虫不是儿戏(资料分享
很多人问学了python能做什么?能找到什么工作
python应用范围非常广泛,几乎所有都能做;最常见的就是web和爬虫了;往后就是人工智能和数据分析了。这里时间有限我就不多说了;今天我们就来说说爬虫吧。
python入门基础,从0到1,爬虫教学获取:python裙:943752371。
一,首先爬虫的基本流程是什么?
二、爬虫能抓取什么样的数据?
三、认识urllib库
urllib是用于获取网络资源的库,python3自带。
初学爬虫者,主要是掌握urllib库中request模块的一堆函数功能。
有必要的话,也可以学习一下error模块。
request模块一些常用到的函数
函数功能简介
Request返回一个Request对象,因为对象有些常用的方法,故而必要的时候需要用到。
urlopen通过直接给的URL或者Request对象化后的URL,返回一个含有该URL的网页源码的对象。
ProxyHandler跟代理有关函数,搭建与代理的通信build_opener跟代理有关函数,创建一个opener对象install_opener安装opener
一些常用到的方法
方法功能简介read()用于读urlopen函数返回对象中的网页源码encode()编码decode()解码
编码解码还有这两种函数,str是关于编码的函数,bytes是关于解码的函数。 网页涉及到的编码经常有’utf-8’和”gb18030’等。 一些编码解码的内容可以看这一篇博客——python3 中的编码和解码
四、认识一些模块
re模块
首先,需要了解的是 re模块——正则表达式模块。
正则表达式是什么?可以这么说,是用于快速从一大堆字符中快速找出想要的子字符串的一种表达方式。函数+表达方式=快速找出子字符串。
这个模块是初学者必须要弄清楚的,内容比较多,在这里就不多说了。可以参考我写的一篇简略的博客——正则表达式
os模块
可用于对文件文本的操作,可以创建文件夹,访问文件夹内容等(博主对该库了解不深,只用来创建过文件夹和访问文件夹内容)
可以了解的函数有 创建文件夹用的函数mkdir和chdir、访问文件夹里的所有文件函数listdir。
csv模块
爬取出来的数据可以以csv的格式保存,可以用office办公软件中的Excel表格软件打开。
网上给出的写法有好几种,在此给出博主的写法。
首先你需要了解内置函数open的newline参数用法,在这里,用与去除存入csv文件时多出来的空行。
csv模块函数
writer,返回一个对写入数据操作的对象。
writerow,参数是列表,在表格中写入一行数据。
csv
<pre style="-webkit-tap-highlight-color: transparent; box-sizing: border-box; font-family: Consolas, Menlo, Courier, monospace; font-size: 16px; white-space: pre-wrap; position: relative; line-height: 1.5; color: rgb(153, 153, 153); margin: 1em 0px; padding: 12px 10px; background: rgb(244, 245, 246); border: 1px solid rgb(232, 232, 232);">import csv
filename = '统计.csv'
fileheader = ['姓名', '性别']
contexts = [['小明', '男'], ['小刚', '男'], ['小红', '女'], ['小花', '女']]
with open(filename, 'w', newline='', encoding='gb18030') as f:
csv_writer = csv.writer(f)
csv_writer.writerow(fileheader)
for people in contexts:
csv_writer.writerow(people)
1
2
3
4
5
6
7
8
9
10
11
三、查看网页源码
网站的文字内容,图片网址,基本都在该网站的网页源码。故而爬取时,先把该网站的网页源码爬取出来,然后从网页源码中筛选出自己想要的数据。用正则表达式从网页源码中筛选信息时,需要先看网页源码来制定好合适的正则表达式。
一般鼠标右击该网页,找到”查看网页源代码“这一选项即可打开。
快捷键:Ctrl + U
不过网页源代码太多太乱,有的时候找信息并不容易,可以使用Ctrl+F查找功能进行查找。
也可以在网页中,找到你想爬取的信息,然后右击该信息位置,找到”审核元素”或者”检查”选项,可以看到整齐简洁的代码。
但是,爬取信息都是基于网页源代码的,而”检查”选项给出的代码可能与源代码不一样,这样的话就会出错。这涉及到网络编程知识,不作解释。
四、认识一些爬虫框架
爬虫框架实用的有名气大的Beautiful Soup、强大的Scrapy、分布式cola等。