采集用python还是火车头_我才知道爬虫也可以酱紫--火车采集器

我才知道爬虫还可以这样—火车采集器的使用

说在前面

额。。。好吧,我这一个三毛钱的屌丝也开始步入实习阶段了,在北京其实也挺好的,虽说压力大,但是今后就业机会也相对而言大一些。好了,说回今天的主题,之前学习Python爬虫的时候一直以为今后工作的话进行爬虫需要自己写源代码然后再一直爬呀爬呀爬,但是不是这样滴(应该不是吧),前天公司扔给我一个抓取网页的工具,然后自己在一直琢磨琢磨,今天下午有了结果了,学习了简单的抓取网页数据。所以我在这里总结一下网站数据采集器—火车采集器的简单使用。

正文

首先,下载火车采集器,这个网上的链接有很多。

这是安装完成之后的火车采集器文件夹。

使用步骤

1.账号登陆进入之后(好像这个账号申请是需要花钱的),我们先新建分组,注意选择所属分组的时候选择正确就OK。

2.对你需要在其组进行任务的组右键选择新建任务

3.编辑此任务,以慧聪网IT业界动态为例。因为涉及到网页的链接,所以我们需要选择【批量/多页】一栏,然后把URL里面变动的数字

换成(*),还可以根据自己的需要对其链接网址采取等差等比数列的抓取。然后点击【添加】,点击【完成】。

4.在多级网址获取一栏里面进行设置。我选择的是手动填写链接地址规则,这就要求对网页的源代码进行分析和截取。注意在【从该选定区域中提取网址】的两个空白框里填写的是我们抓取的网站首页源代码里我们需要那些链接的那一部分代码前后的title源码,也就是说这两个框里的源代码把我们需要的那些链接的源代码夹在了中间。最后点击保存。

5.采集内容规则。我们的标签名就是我们需要抓取网页的信息,双击标签名之后添加代码,原理和第4步骤一样的。在提取内容的时候,我们还可以对其进行数据处理,点击添加进行选择。

6.我们把抓取到的内容保存在本地计算机上,这个时候我们需要注意的是:火车采集器里有默认的模板,但是如果我们采集内容的标签名和默认模板里的不一致,就需要对其修改,使其和我们的标签名一致即可。点击保存。

7.开始对网站数据进行抓取工作。首先勾选这三个选项。

然后右键,开始任务,等待数据的采集。

8.抓取完成,成功之后,打开本地的文件,却没有看到数据,而且标签名也乱码了。不知道怎么回事,是不是我的姿势不对啊,又找了好几个网站又试了几次,认认真真看了源代码好几次,实在是找不出哪里错了啊,各种捉急。后来才知道,妈的txt文件默认格式不是UTF-8的,需要我们改一下,所以另存为一下就OK了。然后再跑一次工具,查看文件,卧槽,果然有数据了,成功的抓取到网站数据了,而且把链接里的也抓取出来了。

总结

这只是一个简单的开始,火车采集器还有很多操作需要我学习,比如把数据存入数据库,抓取图片啊什么的。

加油吧,继续努力!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/537171.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mvn 使用中的错误

出现这种错误的时候:mvn Error building POM may not be this projects POM,报的是那个jar 包,就删除那个jar 包,重新mvn clean install .ok

Java并发编程之FutureTask源码解析

上次总结一下AQS的一些相关知识,这次总结了一下FutureTask的东西,相对于AQS来说简单好多呀 之前提到过一个LockSupport的工具类,也了解一下这个工具类的用法,这里也巩固一下吧 /*** Makes available the permit for the given th…

java 删除二维数组中的null_避免在Java中检查Null语句

1.概述通常,在Java代码中处理null变量、引用和集合很棘手。它们不仅难以识别,而且处理起来也很复杂。事实上,在编译时无法识别处理null的任何错误,会导致运行时NullPointerException。在本教程中,我们将了解在Java中检…

Java并发编程之并发容器ConcurrentHashMap(JDK1.7)解析

最近看了一下ConcurrentHashMap的相关代码,感觉JDK1.7和JDK1.8差别挺大的,这次先看下JDK1.7是怎么实现的吧 哈希(hash) 先了解一下啥是哈希(网上有很多介绍),是一种散列函数,简单来…

带控制端的逻辑运算电路_分别完成正整数的平方、立方和阶乘的运算verilog语言...

练习:设计一个带控制端的逻辑运算电路,分别完成正整数的平方、立方和阶乘的运算。 //--------------myfunction---------- modulemyfunction(clk,n,result,reset,sl); output[6:0]result; input[2:0] n; input reset,clk; input [1:0] sl; reg[6:0]resul…

Java并发编程之并发容器ConcurrentHashMap(JDK1.8)解析

这个版本ConcurrentHashMap难度提升了很多,就简单的谈一下常用的方法就好了,可能有些讲的不太清楚,麻烦发现的大佬指正一下 主要数据结构 1.8将Segment取消了,保留了table数组的形式,但是不在以HashEntry纯链表的形式…

simulink显示多个数据_如何在 Simulink 中使用 PID Tuner 进行 PID 调参?

作者 | 安布奇责编 | 胡雪蕊出品 | CSDN(ID: CSDNnews)本文为一篇技术干货,主要讲述在Simulink如何使用PID Tuner进行PID调参。PID调参器( PIDTuner)概述1.1 简介使用PID Tuner可以对Simulink模型中的PID控制器,离散PID控制器,两自由度PID控制…

Java并发编程之堵塞队列介绍以及SkipList(跳表)

堵塞队列 先了解一下生产者消费者模式: 生产者就是生产数据的一方,消费者就是消费数据的另一方。在多线程开发中,如果生产者处理速度很快,而消费者处理速度很慢,那么生产者就必须等待消费者处理完,才能继…

python生成list的时候 可以用lamda也可以不用_python 可迭代对象,迭代器和生成器,lambda表达式...

分页查找#5.随意写一个20行以上的文件(divmod)# 运行程序,先将内容读到内存中,用列表存储。# l []# 提示:一共有多少页# 接收用户输入页码,每页5条,仅输出当页的内容def read_page(bk_list,n,endlineNone):startline …

数据挖掘技术简介[转]

关键词: 关键词:数据挖掘 数据集合 1. 引言  数据挖掘(Data Mining)是从大量的、不完全的、有噪声的、模糊的、随机的数据中提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程。随…

树莓派安装smbus_树莓派使用smbus不兼容问题(no module named 'smbus')

树莓派使用smbus不兼容问题(no module named ‘smbus’)python3.5–3.6可以使用smbus2代替smbus1. 先参考以下方法:github讨论树莓派社区2.Pypi上可以下载smbus2smbus2PyPi介绍:当前支持的功能有:获取i2c功能(I2C_FUNCS)read_bytewrite_byter…

Java并发编程之线程池ThreadPoolExecutor解析

线程池存在的意义 平常使用线程即new Thread()然后调用start()方法去启动这个线程,但是在频繁的业务情况下如果在生产环境大量的创建Thread对象是则会浪费资源,不仅增加GC回收压力,并且还浪费了时间,创建线程是需要花时间的&…

面向过程的门面模式

{*******************************************************}{ }{ 业务逻辑一 }{ }{ 版权所有 (C) 2008 陈…

Java并发编程之线程定时器ScheduledThreadPoolExecutor解析

定时器 就是需要周期性的执行任务,也叫调度任务,在JDK中有个类Timer是支持周期性执行,但是这个类不建议使用了。 ScheduledThreadPoolExecutor 继承自ThreadPoolExecutor线程池,在Executors默认创建了两种: newSin…

python xml转换键值对_Python 提取dict转换为xml/json/table并输出

#!/usr/bin/python#-*- coding:gbk -*-#设置源文件输出格式import sysimport getoptimport jsonimport createDictimport myConToXMLimport myConToTabledef getRsDataToDict():#获取控制台中输入的参数,并根据参数找到源文件获取源数据csDict{}try:#通过getopt获取…

应用开发框架之——根据数据表中的存储的方法名称来调用方法

功用一:在框架里面根据存储在数据表中的方法名来动态调用执行方法。 unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 class(TForm) Button1: TButton; procedu…

Spring IOC容器组件注入的几种方式

整理一下之前Spring的学习笔记,大致有一下几种Spring注入到容器中的方法: 1)、配置在xml的方式。 2)、开启包扫描ComponentScan使用Component,Service,Controller,Repository(其实后三个都继承…

我们是如何拿下Google和Facebook Offer的?

http://posts.careerengine.us/p/57c3a1c1a09633ee7e57803c 大家好,我是小高,CMU CS Master,来Offer第一期学员,2014年初在孙老师的带领下我在几个月的时间内进入了Yahoo,并工作了近2年。2016年初,Yahoo工作…

Spring中BeanFactory和FactoryBean的区别

先介绍一下Spring的IOC容器到底是个什么东西&#xff0c;都说是一个控制反转的容器&#xff0c;将对象的控制权交给IOC容器&#xff0c;其实在看了源代码之后&#xff0c;就会发现IOC容器只是一个存储单例的一个ConcurrentHashMap<String, BeanDefinition> BeanDefiniti…

python中数字和字符串可以直接相加_用c语言或者python将文件中特定字符串后面的数字相加...

匿名用户1级2014-08-31 回答代码应该不难吧。既然用爬虫爬下来了&#xff0c;为什么爬取数据的时候没做处理呢。之前用过Scrapy爬虫框架&#xff0c;挺好用的&#xff0c;你可研究下。代码&#xff1a;#!codingutf-8import osimport reimport random# 获取当前目录文件列表def …