from scrapy.spider import BaseSpider
from scrapy.selector import HtmlXPathSelector
from manga.items import MangaItem
class MangaHere(BaseSpider):
name = "mangah"
allowed_domains = ["mangahere.com"]
start_urls = ["http://www.mangahere.com/seinen/"]
def parse(self,response):
hxs = HtmlXPathSelector(response)
sites = hxs.select('//ul/li/div')
items = []
for site in sites:
rating = site.select("p/span/text()").extract()
if rating > 4.5:
item = MangaItem()
item["title"] = site.select("div/a/text()").extract()
item["desc"] = site.select("p[2]/text()").extract()
item["link"] = site.select("div/a/@href").extract()
item["rate"] = site.select("p/span/text()").extract()
items.append(item)
return items
我的目标是抓取 www.mangahere.com/seinen 或该网站上的任何内容。我想浏览每一页并收集评分高于 4.5 的书籍。我最初是一名 basespider,并尝试复制和阅读 scrapy 教程,但它几乎让我无法理解。我在这里问我要做什么来创建我的规则,以及如何。我似乎也无法让我的条件正常工作,代码要么只返回第一个项目并且不管条件如何都停止,或者抓住一切,再次不管条件。我知道它的代码可能很混乱,但我仍在努力学习。随意修改代码或提供其他建议