Scrapy爬虫框架安装使用笔记

#学习网址
#http://scrapy-chs.readthedocs.io/zh_CN/0.24/intro/tutorial.html

scrapy startproject pachong #创建项目
scrapy genspider AppVersion itunes.apple.com #创建爬虫 scrapy genspider 文件名 爬取URL链接

scrapy list #查看当前项目下有几个爬虫,需要进入项目目录后运行 scrapy list 命令

把AppVersion.py拖入 pachong/pachong/spiders 文件夹下
scrapy crawl AppVersion #启动爬虫项目 name = “AppVersion”

#ImportError: No module named items 报错说明创建的爬虫不能和项目名称相同,或者_区分也不行

#XPath表达式
/html/head/title: 选择HTML文档中 <head> 标签内的 <title> 元素
/html/head/title/text(): 选择上面提到的 <title> 元素的文字
//td: 选择所有的 <td> 元素
//div[@class=”mine”]: 选择所有具有 class=”mine” 属性的 div 元素

#使用实例:version = response.xpath(“//span[@itemprop=’softwareVersion’]/text()”).extract()
#Xpath出来的是列表哦,要取列表的值
scrapy crawl AppVersion -o items.json #保存为JSON

scrapy list #检查当前项目可用爬虫列表
scrapy runspider AppVersion.py #运行一个爬虫

ITEM_PIPELINES = {? ‘pachong.pipelines.PachongPipeline’: 300,} #使用pipelines配置
#使用日志
LOG_ENABLED = True
LOG_ENCODING = ‘utf-8’
LOG_FILE = ‘log.txt’ #添加绝对路径,否则报错!
LOG_LEVEL = ‘DEBUG’
LOG_STDOUT = True
####使用日志后,命令行不会打印信息了
CRITICAL – 严重错误(critical)
ERROR – 一般错误(regular errors)
WARNING – 警告信息(warning messages)
INFO – 一般信息(informational messages)
DEBUG – 调试信息(debugging messages)

USER_AGENT = ‘Mozilla/7.0 (compatible; Baiduspider/3.5; +http://www.baidu.com/search/spider.html)’
#模拟百度访问

ROBOTSTXT_OBEY = True #是否检查 robots.txt

#Items相关
product = Product(name=’jiage’, price=100) #创建字段
product[‘name’]或product.get(‘name’) # 获取字段值
product[‘last_updated’] = ‘today’ #设置字段值
product.keys() #获取所有字段值
product2 = Product(product) #复制item
dict(product) #根据item创建字典(dict)
Product({‘name’: ‘Laptop PC’, ‘price’: 1500}) #根据字典(dict)创建item

##Scrapy自带的发邮件貌似不好用,配置半天也没成功,之后自己写了个邮件方法

发表评论

电子邮件地址不会被公开。 必填项已用*标注

This site uses Akismet to reduce spam. Learn how your comment data is processed.