很多同学私信问爬虫的相关教程,想了想,还是专门跟大家出些Python爬虫学习相关的教程,从零开始阐述如何编写Python网络爬虫,以及网络爬虫中容易遇到的问题,比如具有反爬加密的网站,还有爬虫拿不到数据,以及登录验证等问题,会伴随大量网站的爬虫实战来进行。
我们编写网络爬虫最主要的目的是爬取想要的数据还有通过爬虫去自动完成我们想在网站中做的一些事情。
这里我会从基础开始讲解如何通过网络爬虫去完成你想要做的事。
先来看一段简单的代码。
import requests #导入requests包
url = 'https://www.cnblogs.com/LexMoon/'
strhtml = requests.get(url) #get方式获取网页数据
print(strhtml.text)
首先是import requests来导入网络请求相关的包,然后定义一个字符串url也就是目标网页,之后我们就要用导入的requests包来请求这个网页的内容。
这里用了requests.get(url),这个get并不是拿取的那个get,而是一种关于网络请求的方法。
网络请求的方法有很多,最常见的有get,post,其它如put,delete你几乎不会见到。
requests.get(url)就是向url这个网页发送get请求(request),然后会返回一个结果,也就是这次请求的响应信息。
响应信息中分为响应头和响应内容。
响应头就是你这次访问是不是成功了,返回给你的是什么类型的数据,还有很多一些。
响应内容中就是你获得的网页源码了。
好了,这样你就算是入门Python爬虫了,但是还是有很多问题。
1. get和post请求有什么区别?
2. 为什么有些网页我爬取到了,里面却没有我想要的数据?
3. 为什么有些网站我爬下