1)爬取汽车之家数据,利用论坛发言的抓取以及NLP,对各种车型的车主做画像。
2 ) 抓取各大电商的评论及销量数据,对各种商品(颗粒度可到款式)沿时间序列的销量以及用户的消费场景进行分析。
Python资源共享群:626017123
3)还可以根据用户评价做情感分析,实时监控产品在消费者心目中的形象,对新发布的产品及时监控,以便调整策略。
4 ) 抓取房产买卖及租售信息,对热热闹闹的房价问题进行分析。
5 ) 抓取 大众点评、美团网等餐饮及消费类网站: 各种店面的开业情况以及用户消费和评价,了解周边变化的口味,所谓是“舌尖上的爬虫”。 以及各种变化的口味,比如:啤酒在衰退,重庆小面在崛起。
6 )58同城等分类信息网站 : 抓取招商加盟的数据,对定价进行分析,帮助网友解惑。
7 )拉勾网、中华英才网等招聘网站 : 抓取各类职位信息,分析最热门的职位以及薪水。
8 )挂号网等医疗信息网站 : 抓取医生信息并于宏观情况进行交叉对比。
9 )应用宝等App市场 : 对各个App的发展情况进行跟踪及预测。(顺便吹一下牛,我们这个榜单很早就发现小红书App的快速增长趋势以及在年轻人中的极佳口碑)
10 )携程、去哪儿及12306等交通出行类网站: 对航班及高铁等信息进行抓取,能从一个侧面反映经济是否正在走入下行通道。
11 )雪球等财经类网站 : 抓取雪球KOL或者高回报用户的行为,找出推荐股票
12 )58同城二手车、易车等汽车类网站 : 什么品牌或者型号的二手车残值高?更保值?反之,什么类型的贬值较快?- 二手车,找出最佳的买车时间以及最保值的汽车。
13 )神州租车、一嗨租车等租车类网站 : 抓取它们列举出来的租车信息,长期跟踪租车价格及数量等信息。
14 )各类信托网站 : 通过抓取信托的数据,了解信托项目的类型及规模。其实还有很多数据,不一一列举了。
上次的文章是在讨论移动端的数据获取: https://blog.youkuaiyun.com/livan1234/article/details/80850978
本文对爬虫做一个全面的总结,不一定包治百病,但是能治好大部分疾病,希望能够对大家有所帮助:
1、 urllib 库:这是一个在爬虫领域绕不开的库,他支持 http 的爬取,几乎可以取到方方面面的内容。
以下面的豆瓣案例做一个简要的解释:
豆瓣小案例:
#!/usr/bin/env python # _*_ UTF-8 _*_
import urllib.request import re
data = urllib.request.urlopen( "https://read.douban.com/provider/all" ).read()
data = data.decode( "utf-8" )
pattern = '<div>(.*?)</div>'
mydata = re.compile(pattern).findall(data)
fh = open ( " 出版社 .txt" , "w" )
for i in range ( 0 , len (mydata)):
fh.write(mydata[i]+ " \n " )
fh.close()
常用函数:
import urllib.request
# 一、常用函数 :
#1、 将第一个参数中的网址,直接下载到 filename 路径下,爬下来的数据为一个网页。
data = urllib.request.urlretrieve( "http://www.hellobi.com" ,
filename = "F:\python_workspace\spider_douban" )
#2\ 清除缓存 , 清除 urlretrieve 等下载时保存的数据
urllib.request.urlcleanup()
#3\ 爬取页面数据 file = urllib.request.urlopen( "http://www.hellobi.com" )
#4\ 返回当环境的信息 file.info()
#5\ 获取当前网页的状态码和网址。
print(file.getcode()) print(file.geturl())
print(file.getcode()) print(file.geturl())
2、超时设置:
由于网络速度或者对方服务器的问题,我们爬取一个网页的时候,都需要设置时间,我们访问一个网页,如果该网页长时间未响应,那么我们的系统就会判断该网页超时了,即无法打开该网页。
有时候,我们需要根据自己的需求,来设置超时的时间值,比如: 有些网站会反应快,我们希望2秒种没有反应则判断为超时,那么此时,timeout=2即为设置方式,即在 urlopen 中加入 timeout 参数。再比如,有些网站服务器反应慢,那么我们希望100秒没有反应,才判断超时,此时的timeout即设置为100,接下来为大家讲解爬虫超时的设置。
file = urllib.request.urlopen( "http://www.hellobi.com" , timeout = 10 )
for i in range ( 0 , 100 ):
try :
file =urllib.request.urlopen( "http://yum.iqianyue.com" , timeout = 1 )
data= file .read()
print ( len (data))
except Exception as e:
print ( "出现异常:" + str (e))
3、自动模拟 Http 请求:
客户端如果要与服务器端进行通信,需要通过http进行请求,http请求有很多种,我们在此会讲post与get两种请求方式,比如登录、搜索某些信息的时候会用到。
1)处理 get 请求:
#!/usr/bin/env python # _*_ UTF-8 _*_
import urllib.request keywd = "python"
# 对网址中出现的中文进行相应的编码 , 得到进行编码之后的中文,后面可以直接使用。 keywd=urllib.request.quote(keywd)
url = "http://www.baidu.com/s?wd" +keywd+ "&ie=urf-8&tn=96542061_hao_pg"
# 将 url 封装为一个请求 req = urllib.request.Request(url)
data = urllib.request.urlopen(req).read()
fh = open ( "test.txt" , "wb" )
fh.write(data) fh.close()
2)理 post 请求: 所谓p