目录:
1. PC网页爬虫
2. H5网页爬虫
3. 微信小程序爬虫
4. 手机APP爬虫
爬取乐刻运动手机APP的课表数据。Android和iOS都可以。
要制定具体方案,还是要从抓包分析开始。
如果你在前一章《三、微信小程序爬虫》中已经搭建好了Charles+iPhone的抓包环境,可以直接启动“乐刻APP”再来抓一波。
LefitAppium.py
LefitMitmAddon.py
接下来就是见证奇迹的时刻了!
可以看到左侧的手机已经自动跑起来了!
所有流过的数据都尽在掌握!
这个方案的适应能力非常强,不怕各种反爬虫机制。
但是如果要去爬取淘宝、携程等海量数据时,肯定也是力不从心。
基础工作:内置元素选择器
序列化存储数据
处理cookie、HTTP些东西间件
爬取 Sitemap 或者 RSS
等等
我需求爬取 Google Play 市场所 App 页面链接及载数量
首先确保配置 Python 2.7, MongoDB 数据库, 及 Python pip 包管理系统
安装应 Python 包并且项目模板:
pip install scrapy scrapy-mongodb
scrapy startproject app
cd app
scrapy genspider google
app/spider/google.py 换面内容:
`# -*- coding: utf-8 -*-
import scrapy
from scrapy.contrib.spiders import CrawlSpider, Rule
from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor
from scrapy.contrib.linkextractors import LinkExtractor
from app.items import GoogleItem
class GoogleSpider(CrawlSpider):
name = "google"
allowed_domains = ["play.google.com"]
start_urls = [
'',
''
]
rules = [
Rule(LinkExtractor(allow=("\.google\.com/store/apps/details", )), callback='parse_app',follow=True),
] # CrawlSpider 根据 rules 规则爬取页面并调用函数进行处理
def parse_app(self, response):
# 获取页面 URL 及载数量
item = GoogleItem()
item['url'] = response.url
item['num'] = response.xpath("//div[@itemprop='numDownloads']").xpath("text()").extract()
yield item
app/items 添加面代码:
class GoogleItem(scrapy.Item):
url = scrapy.Field()
num = scrapy.Field()
app/setting.py 面添加面代码
# 配置 scrapy-mongodb 数据库连接用于自爬取数据存入 MongoDB
ITEM_PIPELINES = [
'scrapy_mongodb.MongoDBPipeline',
]
MONGODB_URI = 'mongodb://127.0.0.1:27017'
MONGODB_DATABASE = 'scrapy'
MONGODB_COLLECTION = 'play'
没其工作连配置文件共四十行启 MongoDB项目目录运行
scrapy crawl google -s JOBDIR=app/jobs
静静等跑完吧-s JOBDIR=app/jobs 参数意思工作状态已经爬取页面数据存 app/jobs 目录即使间断运行面命令该目录恢复工作用重新始
我 Linode 低配 VPS 跑概 40 MongoDB 数据 156 万条记录2015 1 月新闻 Google Play 143 万款 App, 相信已经爬取绝数 App 页面
`>use scrapy
switched to db scrapy
>db.play.count()
1564754
>db.play.find().limit(1)
"_id" : ObjectId("55479d9da28a7c1cca449c23"), "url" : "", "num" : [ " 100,000,000 - 500,000,000 " ]()
>
日志采集。通过爬虫的方式常爬取的数据源主要来自这四类数据源包括,开放数据源、爬虫抓取、传感器和日志采集,开放数据源是针对行业的数据库。爬虫,即网络爬虫,也叫做网络机器人,可以代替人们自动地在互联网中进行数据信息的采集与整理。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)