美文网首页
实验报告

实验报告

作者: belief_8f6c | 来源:发表于2017-05-02 13:34 被阅读0次
实验名称:关于名人名言的数据抓取
一、实验目的:了解网络数据抓取的基本流程,搭建虚拟开发环境。
二、实验内容:

1.搭建云服务器。
2.创建虚拟开发环境。
3.安装Python。
4.安装Scrapy。
5.创建数据采集项目。
6.进行数据爬取。
7.提取并存储数据。

三、实验过程:

1.云服务器(Ubuntu)。
网上查询了解云服务器的搭建过程,比较阿里云服务器和腾讯云服务器(主要是价格比较),阿里云服务器学生有优惠,虽然腾讯也有优惠,但是考虑了老师用的也是阿里云,便于参考,可以避免许多错误,加之时间仓促,按照老师的步骤可以节省时间,我们小组就购买了阿里云服务器,得到了IP。
2.远程连接服务器(MobaXterm/Xshell)
远程连接服务器,我首先用的是MobaXterm,老师给了安装包,找了教程之后直接进行安装,但是连接上服务器之后,几秒就会断开,需要不断的重连,这对于新手来说,不利于实际操作。因此,我们又选择了Xshell进行远程访问服务器。如图所示:

1.png 2.png
3.建立用户组
4.创建虚拟开发环境(virtualenv venv)
5.安装Scrapy
6.创建数据采集项目(nini)
7.定义Spider:
import scrapy
class QuotesSpider(scrapy.Spider):
  name="glfspider"
  def start_requests(self):
    urls=[
      'http://quotes.toscrape.com/page/1',
      'http://quotes.toscrape.com/page/2',
    ]
    for url in urls:
      yield scrapy.Request(url=url,callback=self.parse)
  def parse(self,response):
    page=response.url.split("/")[-2]
    filename='glfspider-%s.html'%page
    with open(filename,'wb') as f:
      f.write(response.body)
      self.log('Saved file %s'%filename)  

8.执行爬虫
9.存储数据:

import scrapy
class QuotesSpider(scrapy.Spider):
  name="nini"
  start_urls=[
    'http://quotes.toscrape.com/page/1',
  ]
  def parse(self,response):
    for quote in response.css('div.quote'):
      yield{
        'text':quote.css('span.text::text').extract_first(),
    'author':quote.css('small.author::text').extract_first(),
    'tags':quote.css('div.tags a.tag::text').extract(),
  }
  next_page=response.css('li.next a::attr(href)').extract_first()
  if next_page is not None:
    next_page=response.urljoin(next_page)
    yield scrapy.Request(next_page,callback=self.parse)  

10.json数据文件转成xml文件

json.png
json数据文件转成xml文件,我直接用在线转换工具
3.png
四、总结

在学习的过程中,了解了一些基础的知识:云服务器,Python,Scrapy,Xshell。但是谈不上掌握了这些知识,研究的还不够清楚,许多问题是在同学或者百度的帮助下解决的。写代码的时候一定要细心,注意缩进,我第一次采集数据的时候只有一条,检查了很久才发现少打了一个括号。其次,发现自己对相关知识了解太少,技术薄弱,应该多关注一下学术前沿的知识。

相关链接:
Scrapy入门教程: http://www.cnblogs.com/txw1958/archive/2012/07/16/scrapy-tutorial.html
Ubuntu通用基础教程:http://blog.csdn.net/top_worker/article/details/45918399
Python爬虫入门教程:http://blog.csdn.net/column/details/why-bug.html

相关文章

  • day28

    最近的实验报告有点多,每天都是调代码,写实验报告。

  • 实验

    实验报告!

  • M.M

    实验报告整理

  • 1

    实验报告链接

  • 实验

    实验实验报告

  • 2019-10-19

    写实验报告。

  • 第四节 Linux 目录结构及文件基本操作

    “Linux 基础入门(新版)”实验报告 Linux 目录结构及文件基本操作 Linux基础入门(新版)实验报告 ...

  • Cisco实验报告

    ·Cisco实验报告 实验...

  • 171103

    昨天:明确了实验报告的做法,做出了第一份实验报告今天:继续完善实验报告,完成精益冲刺会议完成原型难点:在办公室创意...

  • 第一节 Linuix 系统简介

    Linux 基础入门(新版)”实验报告 Linux 系统简介 Linux基础入门(新版)实验报告 实验所得 196...

网友评论

      本文标题:实验报告

      本文链接:https://www.haomeiwen.com/subject/mkcctxtx.html