首先推荐一个免费的素材网站:www.pexels.com
一. python掌握的基本内容概述
字符串方法:split()方法、repalce()方法、strip()方法、format()方法。
判断语句:if condition:
do
else:
do #注意:冒号和缩进不要忘记了,python很注重缩进
再看下多重条件格式:
if condition:
do
elif condition:
do
else:
do
循环语句:
for item in iterable:
do
#item代表元素,iterable是集合
eg. for i in range (1,11)
print(i)
python数据结构:
列表(列表是有序并且可变的,列表可以容纳所有的对象,列表是用大括号构建的):在爬虫中,经常需要请求多个页面,通常情况下会把网页存到列表中,然后循环取出,依次访问爬虫数据。
字典:以键值对(‘key’-‘value’)的形式表现出来。
元组和集合:元组类似于列表,但是元组的元素不能修改只能查看(元组是用圆括号构建的);集合类似于数学中的集合,即里面的元素是无序并且不能重复。在爬虫中,这两个用的比较少。
python的文件操作:
打开文件:通过open()函数打开文件,语法是open(name[, mode[, buffering]]),open()函数中模式参数的常用值,'r'读模式,'w'写模式,'a'追加模式,'b'二进制模式(可添加到其他模式使用),'+'读/写模式(可添加到其他模式使用)。
读写文件:f.write('hello word'),f表示类文件对象。如f=open('C:/test.txt','w');content=f.read()。
关闭文件:f.close()。
python面向对象:这里略过
二. 爬虫原理
网络连接:计算机带着请求头和消息体向服务器发起一次Requeast请求,相应的服务器会返回本计算机相应的HTML文件作为Response(注意这里是一个GET请求)。
爬虫需要做两件事:模拟计算机对服务器发起Request请求;接收服务器端的Response内容并解析、提取所需的信息。
但互联网页面错综复杂,一次请求和回应不能够批量获取网页的数据,因此需要设计爬虫的流程。本教程主要两种爬虫所需的流程,即多页面和跨页面流程。
多页面:每页的结构相同或相似,这种类型的网页爬虫流程是:
- 手动翻页并观察各网页的URL构成特点,构造出所有页面的URL存入列表中。
- 根据URL列表依次循环取出URL。
- 定义爬虫函数。循环调用爬虫函数,存储数据。
- 循环完毕,结束爬虫程序。
跨页面(如有列表页和专题页):这种类型的的爬虫流程是:
- 定义爬取函数函数爬取列表页的所有专题的URL.
- 将专题URL存入列表中(种子URL)
- 定义爬取详细页数据函数
- 进入专题详细页面爬取详细页数据
- 存储数据,循环完毕,结束爬虫程序
爬虫的任务就是两件事:请求网页和解析提取信息。