我需要制作一个项目:
抓取并显示
选择此页面 - http://directory.thesun.co.uk/find/uk/computer-repair
使用Scrapy编写一个爬虫程序,它将从第1页到第10页中提取那里列出的所有业务。将该数据存储到MySQL中。创建存储以下属性的模式:
业务名称, 地址(可能的多个地址), 关于, 照片(可拍多张照片), 电话号码, 网站网址
您真正尝试开发一个好的架构非常重要。这将测试您的RDBMS概念,这是非常必要的。
使用Django创建应用程序,允许用户查看上述数据。不需要数据编辑。此应用程序的外观和工作方式与原始Sun目录站点非常相似。
但我的models.py给出了问题。这是代码:
from django.db import models
class Directory(models.Model):
Bussiness_name = models.CharField(max_length=300)
Description = models.CharField(max_length=900)
Number = models.CharField(max_length=100)
Web_url = models.URLField(max_length=800)
def __unicode__(self):
return self.Bussiness_name+" / "+self.adress_name+" / "+self.Description+" / "+self.Number+" / "+self.Web_url+" / "+self.Photo_name
class Adress:
directory = models.ForeignKey(Directory)
adress_name = models.CharField(max_length=300)
class Photos:
directory = models.ForeignKey(Directory)
Photo_path = models.CharField(max_length=100)
Photo_name = models.CharField(max_length=100)
答案 0 :(得分:1)
所有模型都应该是models.Model子类。这将像一个轮子一样工作:
class Adress(models.Model):
directory = models.ForeignKey(Directory)
adress_name = models.CharField(max_length=300)
class Photos(models.Model):
directory = models.ForeignKey(Directory)
Photo_path = models.CharField(max_length=100)
Photo_name = models.CharField(max_length=100)