summaryrefslogtreecommitdiff
path: root/israblog/israblog/spiders/blogs.py
diff options
context:
space:
mode:
Diffstat (limited to 'israblog/israblog/spiders/blogs.py')
-rw-r--r--israblog/israblog/spiders/blogs.py29
1 files changed, 29 insertions, 0 deletions
diff --git a/israblog/israblog/spiders/blogs.py b/israblog/israblog/spiders/blogs.py
new file mode 100644
index 0000000..b7aadc1
--- /dev/null
+++ b/israblog/israblog/spiders/blogs.py
@@ -0,0 +1,29 @@
+from datetime import datetime
+from scrapy import log
+from scrapy.contrib.spiders import CrawlSpider, Rule
+from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor
+
+
+class IsrablogSpider(CrawlSpider):
+ name = 'israblog'
+ allowed_domains = ['israblog.nana10.co.il']
+ rules = [Rule(SgmlLinkExtractor(allow=[
+ '/blogread.asp?blog=\d+',
+ '/blogread.asp?blog=\d+&year=\d+&month=\d+'
+ ]), 'parse_blog')]
+ start_urls = [
+ 'http://israblog.nana10.co.il/',
+ 'http://israblog.nana10.co.il/lastblogs.aspx',
+ 'http://israblog.nana10.co.il/activeblogs.aspx',
+ 'http://israblog.nana10.co.il/Categories',
+ ]
+
+ def parse_blog(self, response):
+ self.log(response.url)
+ blog, year, month = re.match(r'/blogread.asp\?blog=(\d+)(?:&year=(\d+)&month=(\d+))?', response.url)
+ if not year and not month:
+ now = datetime.now()
+ year = now.year()
+ month = now.month()
+ self.log(blog, year, month)
+ return None