У меня есть этот код, который получает все ссылки на веб-странице:Как получить все исходящие ссылки на данной веб-странице и следовать им?
from scrapy.spider import Spider
from scrapy import Selector
from socialmedia.items import SocialMediaItem
from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor
class MySpider(Spider):
name = 'smm'
allowed_domains = ['*']
start_urls = ['http://en.wikipedia.org/wiki/Social_media']
def parse(self, response):
items = []
for link in response.xpath("//a"):
item = SocialMediaItem()
item['SourceTitle'] = link.xpath('/html/head/title').extract()
item['TargetTitle'] = link.xpath('text()').extract()
item['link'] = link.xpath('@href').extract()
items.append(item)
return items
Я хотел бы сделать следующее: 1) Вместо того, чтобы получить все ссылки, чтобы получить только исходящие из них или, по крайней по крайней мере, только те, которые начинаются с http/s 2) Следуйте за исходящими ссылками 3) Очистите следующую веб-страницу, только если она содержит некоторые ключевые слова в метаданных 4) Повторите весь процесс для заданного количества циклов Может ли кто-нибудь помочь? Приветствия!
Дани
Благодарим вас за то, что вы задали отдельный вопрос, вместо того, чтобы пытаться решить отдельную проблему в комментариях к ответу на другую проблему. – alecxe
Добро пожаловать? Вы можете помочь? –