第一步咱们先来爬取糗事百科的网页源码
糗事百科的网址是:http://www.qiushibaike.com/ 这也是咱们等下要传入的url
其实前面的最简单的爬虫程序就是爬取网页的源代码,如今咱们试着用它来爬取糗事百科的源码,看看能不能成功
python
#!/usr/bin/env python # -*- coding:UTF-8 -*- __author__ = '217小月月坑' import urllib2 url = 'http://www.qiushibaike.com/' request = urllib2.Request(url) response = urllib2.urlopen(request) print response.read()
额......结果出错了,妈蛋,真是出师不利,那好吧,既然如此那咱们就先来来认识错误
程序运行出错是很正常的,出的错误越多,咱们就越可以在实践中积累知识,因此不要惧怕错误。有的错误很明显,一检查程序就知道了,有的错误很隐蔽,可能要改几天结果发现倒是多了一个空格或者是少了一个符号,因此咱们要掌握一些方法来检查错误
不单单是python,其余的编程语言在程序出错时会将错误信息输出,这个信息包括错误的类型,错误的代码在第几行,甚至是哪一个变量出错了,因此咱们要学会经过查找出错信息来分析错误缘由而且解决错误,固然,为了方便,咱们还须要一个可以显示行号的编辑器
如今咱们来看看上面这段程序报了什么错误
编程
urllib2.HTTPError: HTTP Error 502: Server Hangup 就是咱们的错误信息
实际上找到了这个错误信息并无什么卵用,反正我是看不懂,因此我选择百度
百度查到了不少条匹配的信息,可是不要急,多看几条,会让你对这个错误有更深的认识或者能看到一些相关的信息,拓宽你的知识面
"多是那个网站阻止了这类的访问,只要在请求中加上假装成浏览器的header就能够了"
好了,错误的缘由和解决方法已经找到了,那么问题来了
1. 什么是浏览器的header
2. 怎么在python代码里面假装header浏览器