一页网站源码分享,一页式网站模板

各位老铁们,大家好,今天由我来为大家分享一页网站源码分享,以及一页式网站模板的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!

一、准备阶段

明确一下爬虫页面分析的思路:

对于书籍列表页:我们需要知道打开单本书籍的地址、以及获取点开下一页书籍列表页的链接

对于书籍信息页面,我们需要找到提取:(书名、作者、书本简介、书本连载状态)这四点信息

爬虫流程:书籍列表页中点开一本书→提取每一本书的书籍信息;当一页书籍列表页的书籍全部被采集以后,按照获取的下一页链接打开新的商户及列表页→点开一本书的信息→提取每一本书的信息……

二、页面分析

首先,我们先对爬取数据要打开的第一页页面进行分析。

除了使用开发者工具以外,我们还可以使用scrapyshell<url>命令,可以进行前期的爬取实验,从而提高开发的效率。

首先打开cmd(前提必须是安装好了scrapy~,这里就不说怎么按照scrapy了)

输入scrapyshell+<要分析的网址>

可以得到一个这样的结果

运行完这条命令以后,scrapyshell会用url参数构造一个request对象,并且提交给scrapy引擎,页面下载完以后程序进入一个pyhonshell中,我们可以调用view函数使用浏览器显示response所包含的页面

*进行页面分析的时候view函数解析的页更加可靠。

弹出页面如下:

通过观察源代码,可以发现所有书籍link信息前缀为”http://www.quanshuwang.com/book_”

此时我们可以尝试在scrapyshell中提取这些信息

这里使用LinkExtractor提取这些链接

在scrapyshell输入信息与展示信息如下:

随后我们寻找下一页标签的链接,查看源代码可以发现在一个class为next的a标签中

在scrapyshell中尝试提取,发现可以成功提取到目的link

接下来分析单页书籍信息

处理思路和分析书籍页面信息一样,获取网页

在shell中通过fetch函数下载书籍信息页面,然后再通过view函数在浏览器中查看该页面

通过查看网页源代码,发现所有数据包含在class为detail的div模块中。

接下来使用response.css或者response.xpath对数据进行提取

在scrapyshell中尝试如下:(这里只举一个例子,其他的可以自己类似尝试)

逐一确定其他目的提取元素的方式以后,可以开始进行正式的编码实现

三、编码实现

首先,我们在cmd中进到目的python目录中,创建一个scrapy项目

代码如下:

而后进入到创建的新scrapy项目目录下,新建spider文件

运行以后,scrapygenspider命令创建了文件fiction/spiders/fictions.py,并且创建了相应的spider类

总体文件项如图:(其中,fictions.csv是后面进行爬虫的时候生成的)

接下来我们可以对“框架”按照我们前面的需求进行改写

①首先改写Item项目

在fiction/items.py中修改代码如下

②实现页面解析函数

修改fiction/spiders/fictions.py代码如下(具体分析前面已经讨论,注释见详细代码)

③设置参数防止存储数据乱码

在setting.py中加上这个代码

1FEED_EXPORT_ENCODING=’utf-8′

④命令行中调用(要进入到/fiction/fiction中(与setting.py同级目录)才能调用)

在cmd输入代码如下

scrapycrawlbooks-ofiction.csv

就可以调用我们写的爬虫程序进行数据爬取啦!!!

最后贴个爬下来的数据的图

关于一页网站源码分享到此分享完毕,希望能帮助到您。

Published by

风君子

独自遨游何稽首 揭天掀地慰生平