├── guazi ├── guazi │ ├── __init__.py │ ├── items.pyc │ ├── __init__.pyc │ ├── settings.pyc │ ├── pipelines.pyc │ ├── spiders │ │ ├── __init__.pyc │ │ ├── guazi_spider.pyc │ │ ├── __init__.py │ │ └── guazi_spider.py │ ├── items.py │ ├── pipelines.py │ └── settings.py ├── guazi_mysite │ ├── guazi │ │ ├── __init__.py │ │ ├── migrations │ │ │ ├── __init__.py │ │ │ └── __init__.pyc │ │ ├── tests.py │ │ ├── admin.pyc │ │ ├── urls.pyc │ │ ├── views.pyc │ │ ├── __init__.pyc │ │ ├── models.pyc │ │ ├── apps.py │ │ ├── urls.py │ │ ├── admin.py │ │ ├── models.py │ │ └── views.py │ ├── guazi_mysite │ │ ├── __init__.py │ │ ├── urls.pyc │ │ ├── wsgi.pyc │ │ ├── __init__.pyc │ │ ├── settings.pyc │ │ ├── wsgi.py │ │ ├── urls.py │ │ └── settings.py │ ├── templates │ │ ├── base.html │ │ ├── guazi.html │ │ └── search.html │ ├── manage.py │ └── static │ │ └── css │ │ └── base.css └── scrapy.cfg └── README.md /guazi/guazi/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /guazi/guazi_mysite/guazi/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /guazi/guazi_mysite/guazi_mysite/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /guazi/guazi_mysite/guazi/migrations/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Guazi 2 | scrapy抓取,mysql储存,django展示 3 | -------------------------------------------------------------------------------- /guazi/guazi/items.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xgkmxxx/Guazi/HEAD/guazi/guazi/items.pyc -------------------------------------------------------------------------------- /guazi/guazi/__init__.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xgkmxxx/Guazi/HEAD/guazi/guazi/__init__.pyc -------------------------------------------------------------------------------- /guazi/guazi/settings.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xgkmxxx/Guazi/HEAD/guazi/guazi/settings.pyc -------------------------------------------------------------------------------- /guazi/guazi/pipelines.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xgkmxxx/Guazi/HEAD/guazi/guazi/pipelines.pyc -------------------------------------------------------------------------------- /guazi/guazi_mysite/guazi/tests.py: -------------------------------------------------------------------------------- 1 | from django.test import TestCase 2 | 3 | # Create your tests here. 4 | -------------------------------------------------------------------------------- /guazi/guazi/spiders/__init__.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xgkmxxx/Guazi/HEAD/guazi/guazi/spiders/__init__.pyc -------------------------------------------------------------------------------- /guazi/guazi_mysite/guazi/admin.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xgkmxxx/Guazi/HEAD/guazi/guazi_mysite/guazi/admin.pyc -------------------------------------------------------------------------------- /guazi/guazi_mysite/guazi/urls.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xgkmxxx/Guazi/HEAD/guazi/guazi_mysite/guazi/urls.pyc -------------------------------------------------------------------------------- /guazi/guazi_mysite/guazi/views.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xgkmxxx/Guazi/HEAD/guazi/guazi_mysite/guazi/views.pyc -------------------------------------------------------------------------------- /guazi/guazi/spiders/guazi_spider.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xgkmxxx/Guazi/HEAD/guazi/guazi/spiders/guazi_spider.pyc -------------------------------------------------------------------------------- /guazi/guazi_mysite/guazi/__init__.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xgkmxxx/Guazi/HEAD/guazi/guazi_mysite/guazi/__init__.pyc -------------------------------------------------------------------------------- /guazi/guazi_mysite/guazi/models.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xgkmxxx/Guazi/HEAD/guazi/guazi_mysite/guazi/models.pyc -------------------------------------------------------------------------------- /guazi/guazi_mysite/guazi_mysite/urls.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xgkmxxx/Guazi/HEAD/guazi/guazi_mysite/guazi_mysite/urls.pyc -------------------------------------------------------------------------------- /guazi/guazi_mysite/guazi_mysite/wsgi.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xgkmxxx/Guazi/HEAD/guazi/guazi_mysite/guazi_mysite/wsgi.pyc -------------------------------------------------------------------------------- /guazi/guazi_mysite/guazi/apps.py: -------------------------------------------------------------------------------- 1 | from django.apps import AppConfig 2 | 3 | 4 | class GuaziConfig(AppConfig): 5 | name = 'guazi' 6 | -------------------------------------------------------------------------------- /guazi/guazi_mysite/guazi_mysite/__init__.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xgkmxxx/Guazi/HEAD/guazi/guazi_mysite/guazi_mysite/__init__.pyc -------------------------------------------------------------------------------- /guazi/guazi_mysite/guazi_mysite/settings.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xgkmxxx/Guazi/HEAD/guazi/guazi_mysite/guazi_mysite/settings.pyc -------------------------------------------------------------------------------- /guazi/guazi_mysite/guazi/migrations/__init__.pyc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xgkmxxx/Guazi/HEAD/guazi/guazi_mysite/guazi/migrations/__init__.pyc -------------------------------------------------------------------------------- /guazi/guazi/spiders/__init__.py: -------------------------------------------------------------------------------- 1 | # This package will contain the spiders of your Scrapy project 2 | # 3 | # Please refer to the documentation for information on how to create and manage 4 | # your spiders. 5 | -------------------------------------------------------------------------------- /guazi/guazi_mysite/guazi/urls.py: -------------------------------------------------------------------------------- 1 | from django.conf.urls import url 2 | from . import views 3 | 4 | urlpatterns = [ 5 | url(r'^$', views.list_guazi, name='list_guazi'), 6 | url(r'^$', views.search, name='search'), 7 | ] -------------------------------------------------------------------------------- /guazi/guazi_mysite/templates/base.html: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 | {% block title %} 5 | {% endblock %} 6 | 7 | 8 | 9 | {% block content %} 10 | {% endblock %} 11 | 12 | -------------------------------------------------------------------------------- /guazi/scrapy.cfg: -------------------------------------------------------------------------------- 1 | # Automatically created by: scrapy startproject 2 | # 3 | # For more information about the [deploy] section see: 4 | # https://scrapyd.readthedocs.org/en/latest/deploy.html 5 | 6 | [settings] 7 | default = guazi.settings 8 | 9 | [deploy] 10 | #url = http://localhost:6800/ 11 | project = guazi 12 | -------------------------------------------------------------------------------- /guazi/guazi_mysite/manage.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | import os 3 | import sys 4 | 5 | if __name__ == "__main__": 6 | os.environ.setdefault("DJANGO_SETTINGS_MODULE", "guazi_mysite.settings") 7 | 8 | from django.core.management import execute_from_command_line 9 | 10 | execute_from_command_line(sys.argv) 11 | -------------------------------------------------------------------------------- /guazi/guazi_mysite/guazi/admin.py: -------------------------------------------------------------------------------- 1 | from django.contrib import admin 2 | from guazi.models import GuaziCar 3 | # Register your models here. 4 | class GuaziAdmin(admin.ModelAdmin): 5 | list_display = ('name', 'city', 'time', 'mile', 'price') 6 | search_fields = ['name', 'city', 'time', 'mile', 'price'] 7 | 8 | admin.site.register(GuaziCar, GuaziAdmin) 9 | -------------------------------------------------------------------------------- /guazi/guazi_mysite/guazi/models.py: -------------------------------------------------------------------------------- 1 | from __future__ import unicode_literals 2 | 3 | from django.db import models 4 | 5 | # Create your models here. 6 | 7 | class GuaziCar(models.Model): 8 | name = models.CharField(max_length=512) 9 | city = models.CharField(max_length=512) 10 | time = models.CharField(max_length=512) 11 | mile = models.CharField(max_length=512) 12 | price = models.CharField(max_length=512) -------------------------------------------------------------------------------- /guazi/guazi/items.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | 3 | # Define here the models for your scraped items 4 | # 5 | # See documentation in: 6 | # http://doc.scrapy.org/en/latest/topics/items.html 7 | 8 | import scrapy 9 | from scrapy.item import Item, Field 10 | 11 | 12 | class GuaziItem(Item): 13 | name = Field() 14 | city = Field() 15 | time = Field() 16 | mile = Field() 17 | price = Field() 18 | -------------------------------------------------------------------------------- /guazi/guazi_mysite/guazi_mysite/wsgi.py: -------------------------------------------------------------------------------- 1 | """ 2 | WSGI config for guazi_mysite project. 3 | 4 | It exposes the WSGI callable as a module-level variable named ``application``. 5 | 6 | For more information on this file, see 7 | https://docs.djangoproject.com/en/1.9/howto/deployment/wsgi/ 8 | """ 9 | 10 | import os 11 | 12 | from django.core.wsgi import get_wsgi_application 13 | 14 | os.environ.setdefault("DJANGO_SETTINGS_MODULE", "guazi_mysite.settings") 15 | 16 | application = get_wsgi_application() 17 | -------------------------------------------------------------------------------- /guazi/guazi_mysite/static/css/base.css: -------------------------------------------------------------------------------- 1 | .header ul{ 2 | float:left; 3 | width:100%; 4 | padding:0; 5 | margin:0; 6 | list-style-type:none; 7 | } 8 | .header a{ 9 | float:right; 10 | width:7em; 11 | text-decoration:none; 12 | color:white; 13 | background-color:purple; 14 | padding:0.2em 0.6em; 15 | border-right:1px solid white; 16 | } 17 | .header a:hover {background-color:#ff3300} 18 | .header li{display:inline} 19 | 20 | .search-form{ 21 | width: 100%; 22 | 23 | } 24 | 25 | table.table_result { 26 | border: 1px solid #888888; 27 | border-collapse: collapse; 28 | font-family: Arial,Helvetica,sans-serif; 29 | margin-top: 10px; 30 | width: 100%; 31 | } 32 | table.table_result th { 33 | background-color: #CCCCCC; 34 | border: 1px solid #888888; 35 | padding: 5px 15px 5px 5px; 36 | text-align: left; 37 | vertical-align: baseline; 38 | } 39 | table.table_result td { 40 | background-color: #EFEFEF; 41 | border: 1px solid #AAAAAA; 42 | padding: 5px 15px 5px 5px; 43 | vertical-align: text-top; 44 | } -------------------------------------------------------------------------------- /guazi/guazi_mysite/guazi_mysite/urls.py: -------------------------------------------------------------------------------- 1 | """guazi_mysite URL Configuration 2 | 3 | The `urlpatterns` list routes URLs to views. For more information please see: 4 | https://docs.djangoproject.com/en/1.9/topics/http/urls/ 5 | Examples: 6 | Function views 7 | 1. Add an import: from my_app import views 8 | 2. Add a URL to urlpatterns: url(r'^$', views.home, name='home') 9 | Class-based views 10 | 1. Add an import: from other_app.views import Home 11 | 2. Add a URL to urlpatterns: url(r'^$', Home.as_view(), name='home') 12 | Including another URLconf 13 | 1. Add an import: from blog import urls as blog_urls 14 | 2. Import the include() function: from django.conf.urls import url, include 15 | 3. Add a URL to urlpatterns: url(r'^blog/', include(blog_urls)) 16 | """ 17 | from django.conf.urls import include, url 18 | from django.contrib import admin 19 | from guazi import views 20 | 21 | urlpatterns = [ 22 | url(r'^admin/', include(admin.site.urls)), 23 | url(r'^guazi/', include('guazi.urls')), 24 | url(r'^search/$', views.search), 25 | ] 26 | -------------------------------------------------------------------------------- /guazi/guazi/spiders/guazi_spider.py: -------------------------------------------------------------------------------- 1 | # coding:utf-8 2 | import scrapy 3 | from scrapy.selector import Selector 4 | from scrapy.spiders import CrawlSpider, Rule 5 | from scrapy.linkextractors import LinkExtractor 6 | from guazi.items import GuaziItem 7 | 8 | class GuaziSpider(CrawlSpider): 9 | name = "guazi" 10 | allowed_domains = ["www.guazi.com"] 11 | start_urls = [ 12 | "http://www.guazi.com/www/buy/" 13 | ] 14 | #网页url格式为'http://www.guazi.com/www/buy/o2'表示第二页 15 | rules = [ 16 | Rule(LinkExtractor(allow=("/www/buy/o\d")), 17 | follow = True, 18 | callback = 'parse_item') 19 | ] 20 | def parse_item(self, response): 21 | items = [] 22 | #汽车信息在| name | 15 |city | 16 |time | 17 |mile | 18 |price | 19 |
|---|---|---|---|---|
| {{ guazi.name }} | 23 |{{ guazi.city }} | 24 |{{ guazi.time }} | 25 |{{ guazi.mile }} | 26 |{{guazi.price }} | 27 | {% endfor %} 28 |
| name | 33 |city | 34 |time | 35 |mile | 36 |price | 37 |
|---|---|---|---|---|
| {{ guazicar.name }} | 41 |{{ guazicar.city }} | 42 |{{ guazicar.time }} | 43 |{{ guazicar.mile }} | 44 |{{ guazicar.price }} | 45 |
没有记录
69 | {% endif %} 70 |