首先下载request库
pip install request
然后新建一个python文件引入request
import request
写入如下代码
def walk_all(url):
html = requests.get(url)
print html.text
可以看出通过reques类能方便获得html,并且将html的全部代码存放在text中
现在运行如下代码我们来看看结果
url = 'https://www.baidu.com/'
walk_all(url)
结果不出所料print了全部html文件
不过并不是所有网站都能直接访问,比如当访问http://blog.csdn.net/qq_30643987/article/details/52964787
,也就是当前网页时,会出现403错误
那么我们该怎么办呢?
原来一般的网站为了防止爬虫会通过一个叫User-Agent的键值来判断访问方是否是浏览器
所以我们需要在request.get的函数中多加入一行
Header = {'User-Agent':header}
html = requests.get(url,headers = Header)
其中header就是User-Agent的内容
那么如何获得User-Agent呢,很简单,在浏览器中右键选择审查元素,选择network,随意点开一个元素查看它的属性,向下一直拖遍能看见一个为User-Agent的值,复制下来
然后运行如下代码
def walk_all(url,header):
if header == None:
html = requests.get(url)
else:
Header = {'User-Agent':header}
html = requests.get(url,headers = Header)
print html.text
header = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.22 Safari/537.36 SE 2.X MetaSr 1.0";
url = "http://blog.csdn.net/qq_30643987/article/details/52964787"
<pre style="font-family: 宋体; font-size: 9pt; background-color: rgb(255, 255, 255);"><span style="background-color: rgb(228, 228, 255);">walk_all</span>(url,<span style="color:#000080;">header</span>)
运行结果如下:
爬取成功!
接下来会讲解对于具体内容的爬取。