小编Nei*_*eil的帖子

将Scrapy数据保存到MySQL中对应的URL

目前正在与 Scrapy 合作。

我有一个存储在 MySQL 数据库中的 URL 列表。蜘蛛访问这些 URL,捕获两个目标信息(分数计数)。我的目标是,当 Scrapy 完成抓取时,它会在移动到下一个 URL 之前自动填充相应的列。

我是新手,我似乎无法让保存部分正常工作。分数和计数已成功传递到数据库但它会保存为新行,而不是与源 URL 关联。

这是我的代码:amazon_spider.py

import scrapy
from whatoplaybot.items import crawledScore
import MySQLdb

class amazonSpider(scrapy.Spider):
    name = "amazon"
    allowed_domains = ["amazon.com"]
    start_urls = []

    def parse(self, response):
        print self.start_urls

    def start_requests(self):
        conn = MySQLdb.connect(
                user='root',
                passwd='',
                db='scraper',
                host='127.0.0.1',
                charset="utf8",
                use_unicode=True
                )
        cursor = conn.cursor()
        cursor.execute(
            'SELECT url FROM scraped;'
            )

        rows = cursor.fetchall()

        for row in rows:
            yield self.make_requests_from_url(row[0])
        conn.close() …
Run Code Online (Sandbox Code Playgroud)

python mysql screen-scraping scrapy

5
推荐指数
1
解决办法
1800
查看次数

标签 统计

mysql ×1

python ×1

scrapy ×1

screen-scraping ×1