小白学 Scrapy 爬虫系列之一:准备实验机器

爬虫如今是一个非常热门的技术领域,不仅因为它是获取大数据的一种有效方式,还在于它入门还是比较简单、快速,小白学完比较容易有成就感,而且可以「学以致用」。

本系列文章中,笔者将带领大家从零开始学习爬虫编写。在跟随笔者一起实操之前,要求大家有一定的 Python 基础。之前没接触过的同学也不用担心,Python 号称是世界上最容易学的语言,如果之前没有了解,可以先看看Think Python 2这本入门书。这是 Python 社区爱好者共同翻译的一本开源教材,对于零基础的同学来说很有价值。

第一天的任务

本系列教程一共八篇,将持续在腾讯云技术社区更新。前七篇介绍从机器配置到爬虫运行的全过程,最后一篇分享动态页面爬取、反爬虫等进阶建议。

第一天的任务,也就是本文的主题,即 完成爬虫项目的机器配置。

机器及操作系统

在学习爬虫的过程中,可能会碰到由于机器原因导致的软件安装错误,尤其是 Windows 系统。因此,本教程建议大家使用统一的机器机型和操作系统。

确保这个要求的绝佳方式,就是使用腾讯云等云计算平台提供的云服务器。这些都是标准化的机器,每台机器的初始配置都相同,而且可以选择使用一模一样的操作系统,如我们计划使用的 Ubuntu 14.04。

另外,由于直接使用云服务器,在爬虫开发完成之后,就可以直接投入实际使用,做到 7x24 小时持续运行。

因此,笔者建议大家使用腾讯云提供的云服务器。如果你是新注册用户的话,还可以申请免费30天使用。如果已经是注册用户,建议选择1核CPU1GB内存的实验机器,尽量降低实验成本。这也是本系列教程所使用的机器。

购买服务器之后,建议先按下文进行初始安全配置:

如何正确配置 Ubuntu 14.04 服务器?

基础软件

SSH 登录实验服务器之后,我们需要安装以下软件依赖,才能继续后面的任务:

  • Python 3.x
  • git
  • pip
  • virtualenv

安装过程也非常直接明了:

sduo apt-get install python3 git python3-pip

然后再使用 pip 命令安装 virtualenv:

pip3 install virutalenv

在 Ubuntu 系统下,这些操作完成的都特别快,而且基本不会出错。Windows 系统下的过程会稍微复杂一些。

后续计划

完成上面的配置之后,爬虫项目需要的实验机器就准备好了。明天,我们将介绍具体实验环境准备工作,主要包括安装PostgreSQL 数据库和 Scrapy 爬虫库等。

本系列教程的完整内容预计包括:

  • E01:机器配置
  • E02:环境配置
  • E03:创建 Scrapy 项目
  • E04:编写爬虫代码
  • E05:接入 SQLAlchemy
  • E06:编写数据处理管道
  • E07:运行爬虫的几种方式
  • E08:延伸阅读,如何避免反爬等

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏数据和云

恒丰银行 I MySQL MGR与Galera性能测试买家秀

作者介绍: 赵守斌,十年银行业数据库管理经验,熟悉各种Oracle数据库系统方案,对MySQL开源数据库也有涉猎。目前牵头负责恒丰银行数据库管理和各类数据库服务...

5526
来自专栏性能与架构

APP性能测试方便了

可能很多人都不是做APP开发的,但这个工具非常有用,可以推荐给做APP的朋友,一定会帮到他 腾讯开源了一个APP调试平台 - GT GT(简称随身调)是可以直...

5016
来自专栏王亚昌的专栏

UNIX编程艺术之“模块性”

     本章主要讨论模块划分、接口设计,提出了几个很重要的概念,包括紧凑性、正交性、自顶向下和自底向上的设计、SPOT原则、分层、插件化。下面就这几个概念,谈...

1062
来自专栏Java学习网

开发人员必备技能之一“性能优化”

软件程序的性能问题在设计价段就应该有充分的考虑,根据实际需求制定对应的技术方案和实现方法,比如软件运行后的并发用户数、数据存储量等要求;通常所说的性能优化无非是...

3425
来自专栏大前端开发

从编程小白到全栈开发:数据 (1)

有些事情时刻都在发生,但是我们通常很少意识到它们的存在。比如,当我们使用网页或移动应用的时候,其实在不断的产生着数据:注册一个网站或app的账号、发一条微博、写...

1043
来自专栏喔家ArchiSelf

IoT设备的自我测试

东西坏了,事情也出了差错。 简单的说就是 XX发生了。 不管用什么词,事实上我们都生活在一个不完美的世界里。 在嵌入式系统中,有很多失败的可能。 在简单的系统中...

1643
来自专栏服务端技术杂谈

[硅谷热门公司技术巡礼]:UBER数据大迁徙

想象一下如果你必须在几个星期内迁移数以亿计的数据和100多个服务项目,同时还要保持UBER被几百万的乘客正常使用,这是多么艰巨的任务啊!而以下这个故事就是关于数...

2987
来自专栏DevOps时代的专栏

特性分支与特性开关哪家强?

合并冲突 新产品研发初期代码量较少,团队规模也不大,这种时候并不需要太多正式流程。 然而,即使一个团队只有两名开发人员,为了有效避免冲突,仍然建议不要在同时对...

2217
来自专栏AI科技大本营的专栏

最新Python学习项目Top10!

【导读】过去一个月里,我们对近1000个Python 学习项目进行了排名,并挑选出热度前10的项目。这份清单涵盖了包括Web App, Geospatial D...

1452
来自专栏IT大咖说

阿里巴巴:金融级别大数据平台的多租户隔离实践

内容来源:https://yq.aliyun.com/articles/466662

2530

扫码关注云+社区

领取腾讯云代金券