小编use*_*003的帖子

scrapy - 如何从'div'获取文本

我刚刚开始了解scrapy.现在我正在尝试通过以下教程进行爬网.但我很难从div抓取文本.

这是items.py

from scrapy.item import Item, Fied
class DmozItem(Item):
    name = Field()
    title = Field()
    pass
Run Code Online (Sandbox Code Playgroud)

这是dmoz_spider.py

from scrapy.spider import BaseSpider
from scrapy.selector import HtmlXPathSelector
from scrapy.item import Item

from dmoz.items import DmozItem

class DmozSpider(BaseSpider):
    name = "dmoz"
    allowed_domains = ["roxie.com"]
    start_urls = ["http://www.roxie.com/events/details.cfm?eventID=4921702B-9E3D-8678-50D614177545A594"]

    def parse(self, response):
            hxs = HtmlXPathSelector(response)
            sites = hxs.select('//div[@id="eventdescription"]')
            items = []
            for site in sites:
                    item = DmozItem()
                    item['name'] = hxs.select("text()").extract()
                    items.append(item)
            return items
Run Code Online (Sandbox Code Playgroud)

现在我试图通过命令这个从顶级文件夹爬行:

scrapy crawl dmoz -o scraped_data.json -t json
Run Code Online (Sandbox Code Playgroud)

但该文件仅使用'['创建.

它完美地在控制台中工作(通过命令每个选择),但不知何故它不能用作脚本.我真的是scrapy的首发.你们能告诉我如何获得"div"中的数据吗?提前致谢.

* …

html text web-crawler scrapy

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

标签 统计

html ×1

scrapy ×1

text ×1

web-crawler ×1