У меня есть большой CSV с миллионами URL-адресов. CSV имеет один столбец, и его полные URL-адреса готовы для сканирования. Я пытаюсь разбить CSV для лучшей производительности на куски, используя функцию panda. У меня есть файл с именем urls.csv в папке sstkscrape. Когда они разбиты, мне нужен сканер, чтобы начать просмотр каждого из этих URL-адресов для анализа информации для извлечения указанного мной элемента css ahref. Я получаю синтаксическую ошибку, вот мое окружение ...
create_files.py
import pandas as pd
counter = 0
for df in pd.read_csv("urls.csv", chunksize=100000):
df.to_csv(f"input_{counter}.csv", index=False)
counter += 1
items.py
import scrapy
class SstkscrapeItem(scrapy.Item):
contriburl = scrapy.Field()
main.py
from glob import glob
from scrapy import cmdline
for each_file in glob("input_*.csv"):
cmdline.execute("scrapy crawl sstkscrape".split() + ["-a", each_file])
pipelines.py
class SstkscrapePipeline:
def process_item(self, item, spider):
return item
sstkscrape_spider.py
import scrapy
from ..items import SstkscrapeItem
class QuoteSpider(scrapy.Spider):
name = 'sstkscrape'
start_urls = [
'https://www.websiteexample.com'
]
def QuoteSpider(scrapy.Spider):
def __init__(self, each_file='', **kwargs):
self.start_urls = set(pd.read_csv("path_to/each_file")["URL_COLUMN"].tolist())
super().__init__(**kwargs) # python3
def parse(self, response):
items = SstkscrapeItem()
contriburl = response.css(".b_q_e a::attr(href)").extract()
items['contriburl'] = contriburl
yield items
Ошибка, которую я получаю /sstkscrape/spiders/sstkscrape_spider.py ", строка 10 def QuoteSpider (scrapy.Spider): ^ SyntaxError: неверный синтаксис