使用日期范围抓取起始网址

时间:2020-07-02 02:07:32

标签: python url web-scraping scrapy range

我正在尝试创建一个蜘蛛以使用日期范围来爬网多个页面。

以下代码可以正常工作,但是我希望创建一个循环,因此我只需输入2个日期并检索2个日期之间的每个日期,而不必手动输入每个日期。我想抓取自2018年1月1日以来的每个日期。该网址与日期完全相同。

'''
class Example(CrawlSpider):
    name = 'Example'
    allowed_domains = ['example.com.au']
    start_urls = ['https://www.example.com.au/example2/2020-06-18'
'''

我正在尝试以下操作,但出现错误:

提高ValueError('请求网址中缺少方案:%s'%self._url)

ValueError:请求网址中缺少方案:h

'''
import scrapy
from scrapy.linkextractors import LinkExtractor
from scrapy.spiders import CrawlSpider, Rule
from scrapy.selector import Selector
from datetime import timedelta, date



class example(CrawlSpider):
    name = 'example'
    allowed_domains = ['example.com.au']
    
    def daterange(start_date, end_date):
        for n in range(int((end_date - start_date).days)):
            yield start_date + timedelta(n)

    start_date = date(2020, 6, 26)
    end_date = date(2020, 7, 2)
    start_urls = 'https://www.example.com.au/example2/'
    for single_date in daterange(start_date, end_date):
        print(single_date.strftime(start_urls+"%Y-%m-%d"))
    


    rules = (
    

     Rule(LinkExtractor(restrict_xpaths="//td[@class='example__example']/a"), 
     callback='parse_item', follow=True),
    )

    def parse_item(self, response):
'''

1 个答案:

答案 0 :(得分:0)

使用时间增量和日期。

timbits = tk.Button(Donut, text="Timbits")
timdonuts = tk.Button(Donut, text="Donuts")
timbits.grid(column=80, row=6)
timdonuts.grid(column=120, row=6)