爬取当当网的图书信息之实体设计

首先新建一个控制台应用程序WebSpider

这里我选用控制台应用程序,使用控制台非常简单,为了方便监控把抓取到的一些信息给打印出来。

实体设计

BookClass

        public int BookClassId { get; set; }
        public string BookClassName { get; set; }
        public string Url { get; set; }
        public int Pages { get; set; }
        public virtual List<Book> Books { get; set; }

Book

        public int BookId { get; set; }
        public string BookName { get; set; }
        public decimal Price { get; set; }
        public string AuthorName { get; set; }
        public string Publisher { get; set; }
        public string PictureUrl { get; set; }
        public int BookClassId { get; set; }
        public  string BookContent{get;set;}
        public virtual BookClass BookClass { get; set; }

这两个实体是一对多的关系,一个BookClass有很多的Book,一个Book只有一个BookClass

安装Entity Framework,并构建数据库上下文

推荐使用Nuget

添加BookStoreEntities类,并继承DbContext

public class BookStoreEntities:DbContext
    {
        public DbSet<BookClass> BookClass { get; set; }
        public DbSet<Book> Books { get; set; }
    }

在App.config中添加

<connectionStrings>
	<add name="BookStoreEntities" connectionString="server=.;database=Store3;uid=sa;pwd=000000"
      providerName="System.Data.SqlClient" />
	</connectionStrings>

  

好了实体设计完成

时间: 2024-12-27 17:53:28

爬取当当网的图书信息之实体设计的相关文章

爬取当当网的图书信息之结尾

由于当当网上的图书信息很丰富,全部抓取下来工作量很大.只抓取其中的一类 在Main()方法里面 首先用户输入种子URL string starturl = Console.ReadLine(); 构建数据库上下文对象 BookStoreEntities storeDB = new BookStoreEntities(); 获取图书类的URL string html = Tool.GetHtml(starturl); ArrayList list = new ArrayList(); list =

爬取当当网的图书信息之工作流程介绍

前往http://book.dangdang.com/我们可以看到当当网上面的图书种类非常丰富 我们是计算机类图书为例子,那么计算机类图书页面的URL  http://book.dangdang.com/01.54.htm?ref=book-01-A是我们的种子URL 当我们进入这个页面可以看到很多计算机类图书,什么都别说了,都抓取下来,然后在进入子品类页面继续抓取信息,我们以程序涉及品类为例 进来之后我们可以看到大量的图书,而且在页面上方我们可以看到100页,可不止这么一点还有99页没有显示出

爬取当当网的图书信息之封装一个工具类

把这个类名取为Tool 封装一个下载网页的方法GetHtml public static string GetHtml(string url) { try { WebClient wb = new WebClient(); return wb.DownloadString(url); } catch { return ""; } } 传入的是这个网页的URL,这个方法能帮我们把网页下载下来封装一个匹配图书类URL的的方法 public static ArrayList GetList(

爬取当当网的图书信息之导读

什么是爬虫 爬虫是用来抓取互联网上信息的程序.程序员可以利用爬虫来干很多事,有些挺酷炫,这里贴出知乎相关问题的网址https://www.zhihu.com/question/29372574 爬虫的工作流程 主要的分三步走,第一步把网页下载下来,第二步抽取认为有用的信息,第三步将相关信息保存下来.看是不是很简单嗯. 前期技术储备 1.如何把网页下载下来? 这里我们使用相关的library模拟人使用浏览器对服务器发送请求,然后获得相关网页的源代码.我使用C#语言编程,采用封装强度最高的最简单的W

Scrapy爬虫(5)爬取当当网图书畅销榜

??本次将会使用Scrapy来爬取当当网的图书畅销榜,其网页截图如下: ??我们的爬虫将会把每本书的排名,书名,作者,出版社,价格以及评论数爬取出来,并保存为csv格式的文件.项目的具体创建就不再多讲,可以参考上一篇博客,我们只需要修改items.py文件,以及新建一个爬虫文件BookSpider.py. ??items.py文件的代码如下,用来储存每本书的排名,书名,作者,出版社,价格以及评论数. import scrapy class BookspiderItem(scrapy.Item):

python爬虫案例-爬取当当网数据

输入关键字,爬取当当网中商品的基本数据,代码如下: 1 # Author:K 2 import requests 3 from lxml import etree 4 from fake_useragent import UserAgent 5 import re 6 import csv 7 8 9 def get_page(key): 10 for page in range(1,50): 11 url = 'http://search.dangdang.com/?key=%s&act=in

我的第一个Scrapy 程序 - 爬取当当网信息

前面已经安装了Scrapy,下面来实现第一个测试程序. 概述 Scrapy是一个爬虫框架,他的基本流程如下所示(下面截图来自互联网) 简单的说,我们需要写一个item文件,定义返回的数据结构:写一个spider文件,具体爬取的数据程序,以及一个管道 pipeline 文件,作为后续操作,比如保存数据等等. 下面以当当网为例,看看怎么实现.这个例子里面我想爬取的内容是前面20页的羽绒服产品,包括产品名字,链接和评论数. 过程 1. 创建一个Scrapy的项目 scrapy startproject

scrapy爬取当当网

春节已经临近了尾声,也该收收心了.博客好久都没更新了,自己在年前写的爬虫也该“拿”出来了. 本次爬取的目标是当当网,获取当当网所有的书籍信息.采用scrapy+mongodb来采集存储数据.开干! 起始url: start_urls = ['http://category.dangdang.com/cp01.00.00.00.00.00-shlist.html'] 当当书籍的一级分类二级分类都很明显的展示了出来. ok~入口找到了,当当网也没有设置反爬措施,所以可以直接的放心爬取,如果需要大规模

selenium自动化测试工具模拟登陆爬取当当网top500畅销书单

selenium自动化测试工具可谓是爬虫的利器,基本动态加载的网页都能抓取,当然随着大型网站的更新,也出现针对selenium的反爬,有些网站可以识别你是否用的是selenium访问,然后对你加以限制. 当当网目前还没有对这方面加以限制,所以今天就用这个练习熟悉一下selenium操作,我们可以试一下爬取一下当当网top500的畅销书单的相关信息,页面如下: 虽然这个页面不用登录就可以进来,但是我们可以随便试一下模拟登陆,直接在这个页面上面点击登录进入登录界面,然后会弹出一下窗口, 这是百分百会