Python 爬虫之路

1.为什么学爬虫

数据控

2.为什么用Python?

酷!效率高!

学爬虫前,你得先了解这些!Why?

list(队列) ,dict(字典)
爬虫下来的数据要用Python 的数据框架来存储,list 和dic 是基础,另外你还需要了解Numpy ,Pandas

[推荐书籍] 《利用Python进行数据分析》学习Python 的数据框架

爬虫Python 包

爬虫的相关包很多,Urllib,urllib2,requests,bs4,scrapy,pyspider

着重学习requests, bs4

requests 负责链接网站,处理http协议
bs4 负责将网页变成结构化数据,方便爬取
偶尔会遇到一些bs4也很难爬取的内容,这时需要re(正则表达式)

动态网站

开始学习爬取JS加载的动态网站
selenium或者ghost 这种包来控制浏览器
或者借助chrome 开发者工具(f12 开发者)来查看网页加载时的交互,然后用requests 进行表单的提交并爬取js

数据库

python数据库连接知识

网页展现

用到django、flask等web开发框架

爬取效率

代理IP池
scrapy,pyspider 框架部署

import requests
import urllib
import re
import random
from time import sleep
def main():
url='知乎 - 与世界分享你的知识、经验和见解'
#感觉这个话题下面美女多
headers={省略}
i=1
for x in xrange(20,3600,20):
data={'start':'0',
'offset':str(x),
'_xsrf':'a128464ef225a69348cef94c38f4e428'}
#知乎用offset控制加载的个数,每次响应加载20
content=requests.post(url,headers=headers,data=data,timeout=10).text
#用post提交form data
imgs=re.findall('

原文链接

你可能感兴趣的:(Python 爬虫之路)