前段时间受朋友之托,写了一个爬去Apple store APP应用信息的爬虫。基于scrapy写的。第一次接触scrapy,有很多不太了解的地方。请大家指教。核心代码很短

#! usr/bin/python
# -*- coding: utf-8 -*-import scrapy
from tutorial.items import TutorialItem
from urllib import unquote
import reclass AppleSpider(scrapy.Spider):name = 'apple'allowed_domains = ['itunes.apple.com']current_category = {}def start_requests(self):yield scrapy.Request('https://itunes.apple.com/cn/genre/ios/id36?mt=8', self.parse)def parse(self, response):my_item = TutorialItem()app_url = response.urlapp_name = response.xpath('//h1[@itemprop="name"]/text()').extract()if len(app_name) > 0:category = response.meta['category']my_item['app_name'] = app_name[0]app_category = response.xpath('//span[@itemprop="applicationCategory"]/text()').extract()if len(app_category) > 0:my_item['app_category'] = category[0]content = response.xpath('//p[@itemprop="description"]/text()').extract()temp_content = ""if len(content) > 0:for c in content:temp_content += cmy_item['app_content'] = temp_contentif my_item['app_category'] in self.current_category:self.current_category[my_item['app_category']] += 1else:self.current_category[my_item['app_category']] = 1my_item['app_rank'] = self.current_category[my_item['app_category']]my_item['app_url'] = app_urlmy_item['app_developer'] = response.xpath('//div[@class="left"]//h2/text()').extract()[0]yield my_itemdecode_url = unquote(app_url)category = re.findall(r"https://itunes.apple.com/cn/genre/ios-(.*)/.*?", decode_url)for url in response.xpath('//div[@class="grid3-column"]//ul//li//a/@href').extract():yield scrapy.Request(url, meta={'category':category}, callback=self.parse)

粘贴出来,一起学习。

github地址:https://github.com/luotuo/spider-for-apple-store

欢迎大家来fork,star或者pr

apple store 爬虫相关推荐

  1. 开发者账号申请完多久可以用_苹果开发者从0到发布app到apple store

    总体流程 申请开发者账号--申请证书--申请id--生成profile--配置xcode--提交app--配置app相关参数--提交审核--审核通过 1 申请开发者账号 这一步应该不用多介绍,直接申请 ...

  2. disk genius_如何预约Apple Store商店或Genius Bar

    disk genius Maybe you have a cracked iPhone screen or your MacBook Pro isn't charging properly. What ...

  3. uni-app开发App上架Apple Store流程(简略版)

    环境准备: MacBook(安装HBuilderX.XCode.Developer.TestFlight.Transporter),苹果开发者账号 详细版地址:http://t.csdn.cn/mTM ...

  4. 线下销售增长51%,荣耀靠的可不是把体验店装修的像Apple store

    在刚刚过去的双11,荣耀可谓打了一个漂亮的大胜仗:线上,天猫+京东双平台销售总额达到40.2亿元,成为中国手机品牌销售冠军.京东平台单日销量和销售额均为冠军,创造了中国手机单品牌销售额首次超越苹果的历 ...

  5. 怎样下载苹果 Apple Store 官方 APP 里的限时免费应用福利?

    文章出处:http://www.iplaysoft.com/p/apple-store-free-app 话说苹果 Apple Store 经常会推出一些重磅福利,那就是「限时免费」赠送一些非常优秀的 ...

  6. uni-app开发APP上架Apple Store流程记录

    环境准备: MacBook(安装HBuilderX.XCode.Developer.TestFlight.Transporter),苹果开发者账号 流程主要分为三大步骤:证书申请.打包.提交审核 精简 ...

  7. Apple store安装旧版本的软件

    Apple store安装旧版本的软件 算了,真的没有折腾的必要,tmd

  8. 新注册Apple ID无法登陆 Apple Store,出现安全性提示

    如果 apple id 没办法登录新的Apple store 出现提示是安全性问题.这个需要登录自己的Apple ID进行密保问 题的设置.可以直接去Apple的官方网站,也就是你注册的Apple I ...

  9. coc机器人苹果_优必选科技Jimu机器人正式入驻Apple Store 零售店

    "拼搭无限,动你所想"-- Jimu机器人,一款可以自由搭建.编程和分享的全新机器人产品,首次瞩目登陆 Apple Store 零售店. (中国,2016年7月12日)优必选科技( ...

最新文章

  1. 人工智能训练云燧T10
  2. tablednd保存 php,jqgrid中使用tableDnd插件,jqgridtablednd插件
  3. C++ Primer Plus章节编程练习(第五章)
  4. [BUUCTF-pwn]——mrctf2020_shellcode_revenge(可见字符shellcode)(内涵peak小知识)
  5. kafka系列九、kafka事务原理、事务API和使用场景
  6. Android 闹钟,实现demo
  7. linux——线程(2)
  8. 七年程序员生涯,我学到最重要的 6 个教训,别再中招!
  9. python实战===用python识别图片中的中文
  10. java使用Pattern、Matcher调用正则表达式
  11. python爬虫什么框架好用_推荐十款高效率的Python爬虫框架,你用过几个?
  12. 番茄钟怎么调_番茄时钟起床时间怎么设置 番茄时钟起床时间设置方法
  13. 台式计算机最新配置,例举2019推荐组装台式电脑最新配置清单
  14. 【解题报告】2021CCPC东北四省赛
  15. STM32F4 IAP实现总结
  16. VS编程,几个好用的Visual Studio
  17. 基础才是王道——TCP/IP详解学习笔记 这位仁兄写得太好了
  18. 计算机夯实基础学习顺序
  19. Pillow库学习笔记之Image.convert去底色详解
  20. 电脑软件下载平台哪个好

热门文章

  1. 银联商务MISPOS接口开发demo 需要调用POSINF.DLL
  2. 什么是冷备份和热备份
  3. 2. 输出2~100之间的素数
  4. The authenticity of host 'localhost (127.0.0.1)' can't be established的处理方法
  5. 硬件设计与实践:16位CPU设计
  6. Spring Boot安全管理—基于数据库的认证
  7. 来了!Python官方文档中文版
  8. Android中 简洁优秀的AgentWeb框架基本使用
  9. Loner_li 机试题 将数字 例如12345.7895”,用程序实现显示壹万贰仟叁佰肆拾伍圆柒角玖分的方式
  10. 为何演网络电影?吕良伟:帮青年导演圆电影梦