在分析和處理選擇内容時,還需注意頁面的JS可能會修改DOM樹結構。
(一)GitHub的使用
由于之前使用Win,沒使用過shell的。目前隻是了解。以後再補充。找到幾個不錯的教程
GitHub超詳細圖文攻略 http://blog.csdn.net/vipzjyno1/article/details/22098621
Github修改送出 http://www.360doc.com/content/12/0602/16/2660674_215429880.shtml
以後再補充!!!!!
(二)FireFox的FireBug的使用
之前一直使用FireFox的F12預設調試工具,感覺就挺爽的了。剛才換了FireBug一試,那簡直就更爽了。
Tools-->Web Developer-->Get More Tools 然後,一般第一個就是 FireBug 安裝即可。之後按F12,就預設啟用了。
功能簡直強大到沒朋友。可以直接擷取元素的xpath,css path。還可修改cookies.....
(三)豆瓣電影抓取 http://www.ituring.com.cn/article/114408
(1)items.py
# -*- coding: utf-8 -*-
from scrapy import Item, Field
class MovieItem(Item):
name = Field()
year = Field()
score = Field()
director = Field()
classification = Field()
actor = Field()
(2)spiders/movie_spider.py
# -*- coding: utf-8 -*-
from scrapy import Selector
from scrapy.contrib.spiders import CrawlSpider, Rule
from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor
from douban.items import MovieItem
class MovieSpider(CrawlSpider):
name = "movie"
allowed_domains = ["douban.com"]
start_urls = (
'http://movie.douban.com/top250',
)
# rules可以自定義urls的抓取
rules = (
# 這個Rule隻是在start_urls的基礎上查找urls,并不是資料抓取的具體頁面
Rule(SgmlLinkExtractor(allow=(r'http://movie.douban.com/top250\?start=\d+.*'))),
# 這個Rule是具體資料抓取的頁面位址,callback是回調函數,負責處理傳回的response資料
Rule(SgmlLinkExtractor(allow=(r'http://movie.douban.com/subject/\d+')), callback='parse_item'),
)
def parse_item(self, response):
sel = Selector(response)
item = MovieItem()
# 此處選擇還可使用 css(), re() 等。還可利用FireBug協助選取
item['name'] = sel.xpath('//span[@property="v:itemreviewed"]/text()').extract()
item['year'] = sel.xpath('//span[@class="year"]/text()').extract()
item['score'] = sel.xpath('//strong[@class="ll rating_num"]/text()').extract()
item['director'] = sel.xpath('//a[@rel="v:directedBy"]/text()').extract()
item['classification'] = sel.xpath('//span[@property="v:genre"]/text()').extract()
item['actor'] = sel.xpath('//a[@rel="v:starring"]/text()').extract()
return item
(3)Pipeline.py
# 将抓取的資料儲存到資料庫中,這裡有兩個版本
#一個是儲存到MySQL資料庫中
#另一個是儲存到非關系型資料庫MongoDB中
版權聲明:本文為CSDN部落客「weixin_34347651」的原創文章,遵循CC 4.0 BY-SA版權協定,轉載請附上原文出處連結及本聲明。
原文連結:https://blog.csdn.net/weixin_34347651/article/details/91823496