scrapy 站点地图蜘蛛不提供预期的结果
scrapy sitemap spider does not provide expected results
我有这个嵌套站点地图。 Scrapy 文档说它应该可以毫无问题地使用嵌套站点地图。
我的目标 link 是这样的 https://flatinfo.ru/arenda_kvartir.asp?id=867039
因此,根据我的理解,我的 sitemap_rules
包含 link ('/arenda_kvartir/'
) 中的关键字应该使蜘蛛按以下逻辑运行:
在 sitemap.xml
中找到并包含来自 sitemap_rules
的关键字的所有 link 应该被抓取到 parsed
函数中。但根据日志,这永远不会发生。蜘蛛只是遍历站点地图中的所有主要类别并退出。
我哪里错了?
下面是我的代码。
# -*- coding: utf-8 -*-
import scrapy
from scrapy.spiders import SitemapSpider
class CodeSpider(SitemapSpider):
name = 'code_s'
sitemap_urls = ['https://flatinfo.ru/sitemap.xml']
sitemap_rules = [
('/arenda_kvartir/', 'parsed'),
('/sitemap_prodaja_kvartir/', 'parsed'),
]
def parsed(self, response):
yield {
}
您需要在 sitemap_rules
中匹配两种类型的 URL:https://flatinfo.ru/arenda.asp?house=43182
和 https://flatinfo.ru/prodaja_kvartir.asp?id=17488515
。 正确的 sitemap_rules
将是:
sitemap_rules = [
('arenda.asp', 'parsed'),
('prodaja_kvartir.asp', 'parsed'),
]
sitemap_follow = ['sitemap_prodaja_kvartir', 'sitemap_arenda']
(我添加了 sitemap_follow
以跳过其他站点地图条目)。
还有一件事:你需要等待(对我来说第一次处理 URL 将近 20 分钟!)因为每个 XML 文件都需要很多时间来处理。
我有这个嵌套站点地图。 Scrapy 文档说它应该可以毫无问题地使用嵌套站点地图。
我的目标 link 是这样的 https://flatinfo.ru/arenda_kvartir.asp?id=867039
因此,根据我的理解,我的 sitemap_rules
包含 link ('/arenda_kvartir/'
) 中的关键字应该使蜘蛛按以下逻辑运行:
在 sitemap.xml
中找到并包含来自 sitemap_rules
的关键字的所有 link 应该被抓取到 parsed
函数中。但根据日志,这永远不会发生。蜘蛛只是遍历站点地图中的所有主要类别并退出。
我哪里错了?
下面是我的代码。
# -*- coding: utf-8 -*-
import scrapy
from scrapy.spiders import SitemapSpider
class CodeSpider(SitemapSpider):
name = 'code_s'
sitemap_urls = ['https://flatinfo.ru/sitemap.xml']
sitemap_rules = [
('/arenda_kvartir/', 'parsed'),
('/sitemap_prodaja_kvartir/', 'parsed'),
]
def parsed(self, response):
yield {
}
您需要在 sitemap_rules
中匹配两种类型的 URL:https://flatinfo.ru/arenda.asp?house=43182
和 https://flatinfo.ru/prodaja_kvartir.asp?id=17488515
。 正确的 sitemap_rules
将是:
sitemap_rules = [
('arenda.asp', 'parsed'),
('prodaja_kvartir.asp', 'parsed'),
]
sitemap_follow = ['sitemap_prodaja_kvartir', 'sitemap_arenda']
(我添加了 sitemap_follow
以跳过其他站点地图条目)。
还有一件事:你需要等待(对我来说第一次处理 URL 将近 20 分钟!)因为每个 XML 文件都需要很多时间来处理。