Python Scrapy:递归爬网生成调试:爬网(200)和无项输出

Python Scrapy:递归爬网生成调试:爬网(200)和无项输出,python,recursion,web-crawler,scrapy,Python,Recursion,Web Crawler,Scrapy,我试图让我的第一个Scrapy递归爬行器在一个非常简单的站点上运行,但是遇到了DEBUG:Crawled(200)问题,JSON文件中没有任何内容 我从网上拿出一个例子,试了试。我真的不知道问题出在哪里。有人能帮我吗 蜘蛛代码: from scrapy.contrib.spiders import CrawlSpider, Rule from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor from scrapy.selec

我试图让我的第一个Scrapy递归爬行器在一个非常简单的站点上运行,但是遇到了DEBUG:Crawled(200)问题,JSON文件中没有任何内容

我从网上拿出一个例子,试了试。我真的不知道问题出在哪里。有人能帮我吗

蜘蛛代码:

from scrapy.contrib.spiders import CrawlSpider, Rule
from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor
from scrapy.selector import HtmlXPathSelector
from scrapy.item import Item

class rgfMedlem(CrawlSpider):
    name = "rgfMedlem"
    allowed_domains = ["rgf.no"]
    start_urls = ["http://rgf.no/medlem/index.php"]

    rules = (
        Rule(SgmlLinkExtractor(allow=('index.php', ))),

        Rule(SgmlLinkExtractor(allow=('\?s=', )), callback='parse_item'),
    )

    def parse_item(self, response):
        hxs = HtmlXPathSelector(response)
        rows = hxs.select('//span[@class="innhold"]/table/tr')
        items = []
        item = SasItem()

        for row in rows:
            print "har ar jag"
            item['agent'] = row.select('td/b/text()').extract()
            item['org'] = row.select('td/b/text()').extract()
            item['link'] = rows.select('td/a/@href').extract()
            item['produkt'] = rows.select('td/b/text()').extract()
            items.append(item)

        return items
爬行器爬网日志文件

2014-02-22 21:32:39+0100 [scrapy] INFO: Scrapy 0.22.2 started (bot: sas)
2014-02-22 21:32:39+0100 [scrapy] INFO: Optional features available: ssl, http11
2014-02-22 21:32:39+0100 [scrapy] INFO: Overridden settings: {'NEWSPIDER_MODULE': 'sas.spiders', 'FEED_URI': 'scraped_data.json', 'SPIDER_MODULES': ['sas.spiders'], 'BOT_NAME': 'sas', 'DEFAULT_ITEM_CLASS': 'sas.items.SasItem', 'FEED_FORMAT': 'json', 'LOG_FILE': 'log.txt'}
2014-02-22 21:32:39+0100 [scrapy] INFO: Enabled extensions: FeedExporter, LogStats, TelnetConsole, CloseSpider, WebService, CoreStats, SpiderState
2014-02-22 21:32:39+0100 [scrapy] INFO: Enabled downloader middlewares: HttpAuthMiddleware, DownloadTimeoutMiddleware, UserAgentMiddleware, RetryMiddleware, DefaultHeadersMiddleware, MetaRefreshMiddleware, HttpCompressionMiddleware, RedirectMiddleware, CookiesMiddleware, ChunkedTransferMiddleware, DownloaderStats
2014-02-22 21:32:39+0100 [scrapy] INFO: Enabled spider middlewares: HttpErrorMiddleware, OffsiteMiddleware, RefererMiddleware, UrlLengthMiddleware, DepthMiddleware
2014-02-22 21:32:39+0100 [scrapy] INFO: Enabled item pipelines: 
2014-02-22 21:32:39+0100 [rgfMedlem] INFO: Spider opened
2014-02-22 21:32:39+0100 [rgfMedlem] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
2014-02-22 21:32:39+0100 [scrapy] DEBUG: Telnet console listening on 0.0.0.0:6023
2014-02-22 21:32:39+0100 [scrapy] DEBUG: Web service listening on 0.0.0.0:6080
2014-02-22 21:32:45+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php> (referer: None)
2014-02-22 21:32:45+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=F> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100 [rgfMedlem] DEBUG: Filtered duplicate request: <GET http://rgf.no/medlem/index.php?q=1> - no more duplicates will be shown (see DUPEFILTER_CLASS)
2014-02-22 21:32:45+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=4> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=6> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=E> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=A> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=1> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=C> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=B> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=D> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=%D8> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=Z> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=Y> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=X> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=W> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=V> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=U> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=T> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=F&s=10> (referer: http://rgf.no/medlem/index.php?q=F)
2014-02-22 21:32:45+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=R> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=S> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=Q> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=N> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=C&s=10> (referer: http://rgf.no/medlem/index.php?q=C)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=P> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=O> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=A&s=10> (referer: http://rgf.no/medlem/index.php?q=A)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=B&s=10> (referer: http://rgf.no/medlem/index.php?q=B)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=M> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=E&s=10> (referer: http://rgf.no/medlem/index.php?q=E)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=L> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=K> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=D&s=10> (referer: http://rgf.no/medlem/index.php?q=D)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=J> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=V&s=10> (referer: http://rgf.no/medlem/index.php?q=V)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=W&s=10> (referer: http://rgf.no/medlem/index.php?q=W)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=I> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=F&s=20> (referer: http://rgf.no/medlem/index.php?q=F&s=10)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=H> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=S&s=10> (referer: http://rgf.no/medlem/index.php?q=S)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=F&s=0> (referer: http://rgf.no/medlem/index.php?q=F&s=10)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=T&s=10> (referer: http://rgf.no/medlem/index.php?q=T)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=R&s=10> (referer: http://rgf.no/medlem/index.php?q=R)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=G> (referer: http://rgf.no/medlem/index.php)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=O&s=10> (referer: http://rgf.no/medlem/index.php?q=O)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=P&s=10> (referer: http://rgf.no/medlem/index.php?q=P)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=B&s=20> (referer: http://rgf.no/medlem/index.php?q=B&s=10)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=B&s=0> (referer: http://rgf.no/medlem/index.php?q=B&s=10)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=E&s=20> (referer: http://rgf.no/medlem/index.php?q=E&s=10)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=J&s=10> (referer: http://rgf.no/medlem/index.php?q=J)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=W&s=0> (referer: http://rgf.no/medlem/index.php?q=W&s=10)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=K&s=10> (referer: http://rgf.no/medlem/index.php?q=K)
2014-02-22 21:32:46+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=A&s=20> (referer: http://rgf.no/medlem/index.php?q=A&s=10)
2014-02-22 21:32:47+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=I&s=10> (referer: http://rgf.no/medlem/index.php?q=I)
2014-02-22 21:32:47+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=S&s=20> (referer: http://rgf.no/medlem/index.php?q=S&s=10)
2014-02-22 21:32:47+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=L&s=10> (referer: http://rgf.no/medlem/index.php?q=L)
2014-02-22 21:32:47+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=H&s=10> (referer: http://rgf.no/medlem/index.php?q=H)
2014-02-22 21:32:47+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=M&s=10> (referer: http://rgf.no/medlem/index.php?q=M)
2014-02-22 21:32:47+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=G&s=10> (referer: http://rgf.no/medlem/index.php?q=G)
2014-02-22 21:32:47+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=F&s=30> (referer: http://rgf.no/medlem/index.php?q=F&s=20)
2014-02-22 21:32:47+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=S&s=0> (referer: http://rgf.no/medlem/index.php?q=S&s=10)
2014-02-22 21:32:47+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=V&s=0> (referer: http://rgf.no/medlem/index.php?q=V&s=10)
2014-02-22 21:32:47+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=B&s=30> (referer: http://rgf.no/medlem/index.php?q=B&s=20)
2014-02-22 21:32:47+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=E&s=0> (referer: http://rgf.no/medlem/index.php?q=E&s=10)
2014-02-22 21:32:47+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=P&s=20> (referer: http://rgf.no/medlem/index.php?q=P&s=10)
2014-02-22 21:32:47+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=P&s=0> (referer: http://rgf.no/medlem/index.php?q=P&s=10)
2014-02-22 21:32:47+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=O&s=0> (referer: http://rgf.no/medlem/index.php?q=O&s=10)
2014-02-22 21:32:47+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=A&s=30> (referer: http://rgf.no/medlem/index.php?q=A&s=20)
2014-02-22 21:32:47+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=K&s=20> (referer: http://rgf.no/medlem/index.php?q=K&s=10)
2014-02-22 21:32:47+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=K&s=0> (referer: http://rgf.no/medlem/index.php?q=K&s=10)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=H&s=0> (referer: http://rgf.no/medlem/index.php?q=H&s=10)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=S&s=30> (referer: http://rgf.no/medlem/index.php?q=S&s=20)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=L&s=0> (referer: http://rgf.no/medlem/index.php?q=L&s=10)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=H&s=20> (referer: http://rgf.no/medlem/index.php?q=H&s=10)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=O&s=20> (referer: http://rgf.no/medlem/index.php?q=O&s=10)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=L&s=20> (referer: http://rgf.no/medlem/index.php?q=L&s=10)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=I&s=20> (referer: http://rgf.no/medlem/index.php?q=I&s=10)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=M&s=20> (referer: http://rgf.no/medlem/index.php?q=M&s=10)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=J&s=0> (referer: http://rgf.no/medlem/index.php?q=J&s=10)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=G&s=20> (referer: http://rgf.no/medlem/index.php?q=G&s=10)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=I&s=0> (referer: http://rgf.no/medlem/index.php?q=I&s=10)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=M&s=0> (referer: http://rgf.no/medlem/index.php?q=M&s=10)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=G&s=0> (referer: http://rgf.no/medlem/index.php?q=G&s=10)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=R&s=20> (referer: http://rgf.no/medlem/index.php?q=R&s=10)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=T&s=0> (referer: http://rgf.no/medlem/index.php?q=T&s=10)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=D&s=20> (referer: http://rgf.no/medlem/index.php?q=D&s=10)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=T&s=20> (referer: http://rgf.no/medlem/index.php?q=T&s=10)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=H&s=30> (referer: http://rgf.no/medlem/index.php?q=H&s=20)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=D&s=0> (referer: http://rgf.no/medlem/index.php?q=D&s=10)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=C&s=20> (referer: http://rgf.no/medlem/index.php?q=C&s=10)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=A&s=40> (referer: http://rgf.no/medlem/index.php?q=A&s=30)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=A&s=0> (referer: http://rgf.no/medlem/index.php?q=A&s=10)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=S&s=40> (referer: http://rgf.no/medlem/index.php?q=S&s=30)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=C&s=0> (referer: http://rgf.no/medlem/index.php?q=C&s=10)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=S&s=50> (referer: http://rgf.no/medlem/index.php?q=S&s=40)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=G&s=30> (referer: http://rgf.no/medlem/index.php?q=G&s=20)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=H&s=40> (referer: http://rgf.no/medlem/index.php?q=H&s=30)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=T&s=30> (referer: http://rgf.no/medlem/index.php?q=T&s=20)
2014-02-22 21:32:48+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=N&s=10> (referer: http://rgf.no/medlem/index.php?q=N)
2014-02-22 21:32:49+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=R&s=0> (referer: http://rgf.no/medlem/index.php?q=R&s=10)
2014-02-22 21:32:49+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=N&s=0> (referer: http://rgf.no/medlem/index.php?q=N&s=10)
2014-02-22 21:32:49+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=S&s=60> (referer: http://rgf.no/medlem/index.php?q=S&s=50)
2014-02-22 21:32:49+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=N&s=20> (referer: http://rgf.no/medlem/index.php?q=N&s=10)
2014-02-22 21:32:49+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=C&s=30> (referer: http://rgf.no/medlem/index.php?q=C&s=20)
2014-02-22 21:32:49+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=T&s=40> (referer: http://rgf.no/medlem/index.php?q=T&s=30)
2014-02-22 21:32:49+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=V&s=20> (referer: http://rgf.no/medlem/index.php?q=V&s=10)
2014-02-22 21:32:49+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=N&s=30> (referer: http://rgf.no/medlem/index.php?q=N&s=20)
2014-02-22 21:32:49+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=V&s=30> (referer: http://rgf.no/medlem/index.php?q=V&s=20)
2014-02-22 21:32:49+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=S&s=70> (referer: http://rgf.no/medlem/index.php?q=S&s=60)
2014-02-22 21:32:49+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=T&s=50> (referer: http://rgf.no/medlem/index.php?q=T&s=40)
2014-02-22 21:32:49+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=R&s=30> (referer: http://rgf.no/medlem/index.php?q=R&s=20)
2014-02-22 21:32:49+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=N&s=40> (referer: http://rgf.no/medlem/index.php?q=N&s=30)
2014-02-22 21:32:50+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=R&s=40> (referer: http://rgf.no/medlem/index.php?q=R&s=30)
2014-02-22 21:32:50+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=A&s=50> (referer: http://rgf.no/medlem/index.php?q=A&s=40)
2014-02-22 21:32:50+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=A&s=60> (referer: http://rgf.no/medlem/index.php?q=A&s=50)
2014-02-22 21:32:51+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=T&s=60> (referer: http://rgf.no/medlem/index.php?q=T&s=50)
2014-02-22 21:32:51+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=S&s=80> (referer: http://rgf.no/medlem/index.php?q=S&s=70)
2014-02-22 21:32:51+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=S&s=90> (referer: http://rgf.no/medlem/index.php?q=S&s=80)
2014-02-22 21:32:51+0100 [rgfMedlem] DEBUG: Crawled (200) <GET http://rgf.no/medlem/index.php?q=S&s=100> (referer: http://rgf.no/medlem/index.php?q=S&s=90)
2014-02-22 21:32:51+0100 [rgfMedlem] INFO: Closing spider (finished)
2014-02-22 21:32:51+0100 [rgfMedlem] INFO: Dumping Scrapy stats:
    {'downloader/request_bytes': 32718,
     'downloader/request_count': 119,
     'downloader/request_method_count/GET': 119,
     'downloader/response_bytes': 346242,
     'downloader/response_count': 119,
     'downloader/response_status_count/200': 119,
     'finish_reason': 'finished',
     'finish_time': datetime.datetime(2014, 2, 22, 20, 32, 51, 880000),
     'log_count/DEBUG': 122,
     'log_count/INFO': 7,
     'request_depth_max': 12,
     'response_received_count': 119,
     'scheduler/dequeued': 119,
     'scheduler/dequeued/memory': 119,
     'scheduler/enqueued': 119,
     'scheduler/enqueued/memory': 119,
     'start_time': datetime.datetime(2014, 2, 22, 20, 32, 39, 846000)}
2014-02-22 21:32:51+0100 [rgfMedlem] INFO: Spider closed (finished)
2014-02-22 21:32:39+0100[scrapy]信息:scrapy 0.22.2已启动(bot:sas)
2014-02-22 21:32:39+0100[scrapy]信息:可选功能可用:ssl、http11
2014-02-22 21:32:39+0100[scrapy]信息:覆盖的设置:{'NEWSPIDER_模块':'sas.SPIDER','FEED_URI':'scraped_data.json','SPIDER_模块':['sas.SPIDER'],'BOT_NAME':'sas','DEFAULT_ITEM_CLASS':'sas.items.SasItem','FEED_格式':'json','LOG_文件':'LOG.txt'}
2014-02-22 21:32:39+0100[scrapy]信息:启用的扩展:FeedExporter、LogStats、TelnetConsole、CloseSpider、WebService、CoreStats、SpiderState
2014-02-22 21:32:39+0100[scrapy]信息:启用的下载中间件:HttpAuthMiddleware、DownloadTimeoutMiddleware、UserAgentMiddleware、RetryMiddleware、DefaultHeadersMiddleware、MetaRefreshMiddleware、HttpCompressionMiddleware、RedirectMiddleware、Cookies Middleware、ChunkedTransferMiddleware、DownloadersStats
2014-02-22 21:32:39+0100[scrapy]信息:启用的spider中间件:HttpErrorMiddleware、OffsiteMiddleware、referermidleware、urlengthmiddleware、DepthMiddleware
2014-02-22 21:32:39+0100[scrapy]信息:启用的项目管道:
2014-02-22 21:32:39+0100[rgfMedlem]信息:蜘蛛网已打开
2014-02-22 21:32:39+0100[rgfMedlem]信息:抓取0页(以0页/分钟的速度),抓取0项(以0项/分钟的速度)
2014-02-22 21:32:39+0100[scrapy]调试:Telnet控制台在0.0.0.0:6023上侦听
2014-02-22 21:32:39+0100[scrapy]调试:在0.0.0.0:6080上侦听Web服务
2014-02-22 21:32:45+0100[rgfMedlem]调试:爬网(200)(参考:无)
2014-02-22 21:32:45+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100[rgfMedlem]调试:筛选的重复请求:-将不再显示更多的重复项(请参见DUPEFILTER_类)
2014-02-22 21:32:45+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php?q=F)
2014-02-22 21:32:45+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:45+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:46+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:46+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:46+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php?q=C)
2014-02-22 21:32:46+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:46+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:46+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php?q=A)
2014-02-22 21:32:46+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php?q=B)
2014-02-22 21:32:46+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:46+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php?q=E)
2014-02-22 21:32:46+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:46+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:46+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php?q=D)
2014-02-22 21:32:46+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:46+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php?q=V)
2014-02-22 21:32:46+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php?q=W)
2014-02-22 21:32:46+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:46+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php?q=F&s=10)
2014-02-22 21:32:46+0100[rgfMedlem]调试:爬网(200)(参考:http://rgf.no/medlem/index.php)
2014-02-22 21:32:46+0100[rgfMedlem]调试:爬网(20
from scrapy.contrib.spiders import CrawlSpider, Rule
from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor
from scrapy.selector import Selector

class rgfMedlemSpider(CrawlSpider):
    name = "rgfMedlem"
    allowed_domains = ["rgf.no"]
    start_urls = ["http://rgf.no/medlem/index.php"]

    rules = (
        Rule(SgmlLinkExtractor(allow=('(\?q=*)|(\?s=\d+&q=*)', )), callback='parse_item', follow=True),
    )

    def parse_item(self, response):
        sel = Selector(response)
        rows = sel.xpath('//span[@class="innhold"]/table/tr')
        items = []

        for row in rows[1:]:
            item = SasItem()
            item['agent'] = row.xpath('./td[1]/a/text()|./td[1]/text()').extract()
            item['org'] = row.xpath('./td[2]/text()').extract()
            item['link'] = row.xpath('./td[1]/a/@href').extract()
            item['produkt'] = row.xpath('./td[3]/text()').extract()
            items.append(item)
        return items