Как настроить таргетинг на указанный элемент c с помощью класса - PullRequest
0 голосов
/ 21 января 2020

Я пытаюсь удалить этот веб-сайт, который называется startup-India, на котором я собираю URL-адрес и название компании, но для удаления URL-адреса и имени мне нужно настроить таргетинг на них, но я не знаю, какой путь правильный пожалуйста, помогите.


import logging
from bs4 import BeautifulSoup
import requests
import csv
import scrapy

class WebCrawlerPipeline(object):
    def process_item(self, item, spider):
        return item


class ProfileCrawlerPipeline(object):
    def open_spider(self, spider):
        self.urls = list()
        self.companies = list()
        pass

    def process_item(self, item, spider):
        item = dict(item)
        url = item.get('item')
        # yield scrapy.Request(url=url, callback=self.parse_content)
        # logging.info(url)
        r = requests.get(url).content
        soup = BeautifulSoup(r, 'html.parser')
        # url_txt = soup.select('div.container')
        container = soup.find("div", class_="container")
        logging.info(container)
        # # self.write_to_csv()

    def parse_content(self, response):
        logging.info(response.url)

    def close_spider(self, spider):
        pass

    def write_to_csv(self):
        pass

Код будет оценен

1 Ответ

0 голосов
/ 21 января 2020

Вам не нужно использовать BeautifulSoup с Scrapy.

Я предлагаю вам взглянуть на учебник по Scrapy и использовать селектор Xpath или CSS: https://docs.scrapy.org/en/latest/intro/tutorial.html#xpath -a -rief-intro

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...