Scrapy ile sorun yaşıyorum. Verilen URL başına 1000 adede kadar iç bağlantıyı kaldıracak kodlara ihtiyacım var. Kodum komut satırında çalışırken çalışır, ancak örümcek durmaz, sadece mesajı alır.N öğeleri kazındıktan sonra Scrapy'yi durdurun
from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor
from scrapy.contrib.spiders import CrawlSpider, Rule
from scrapy.item import Item, Field
from scrapy.contrib.closespider import CloseSpider
class MyItem(Item):
url= Field()
class MySpider(CrawlSpider):
name = 'testspider1'
allowed_domains = ['angieslist.com']
start_urls = ['http://www.angieslist.com']
rules = (Rule(SgmlLinkExtractor(), callback='parse_url', follow=True),)
def parse_url(self, response):
item = MyItem()
item['url'] = response.url
scrape_count = self.crawler.stats.get_value('item_scraped_count')
print scrape_count
limit = 10
if scrape_count == limit:
raise CloseSpider('Limit Reached')
return item
bunu durmuyor emin misiniz? CloseSpider alındıktan sonra zaten talep edilen şeyleri işlemek için terazinin devam edeceğine inanıyorum. Demek istediğim, hemen durmayacak, ama yeni öğeler istenmeyecek – Alik
[This] (http://stackoverflow.com/questions/30928177/scrapy-limit-requests-for-testing) sizin için ilginç olabilir. –
Haklısın, durmuyor. Ancak, bu süreci hızlandırmayı planlıyorum ve gereksiz işlemleri kaldırmak istiyorum. "Dime'de durmak" için bir yol olacağını umuyordum. sözde. –