如何在ForeSpider爬虫软件中设置代理IP?

 

作者 | 前嗅 来源 | 前嗅大数据(www.forenose.com)

今天为大家介绍一下:如何在ForeSpider数据采集器中设置代理IP。

前嗅ForeSpider数据采集引擎,一款通用的数据采集系统,还带有数据挖掘、清洗分类及筛选导出的功能,能够满足绝大多数客户的数据采集及数据挖掘需求。

ForeSpider爬虫软件采集速度可高达8000万条/天,支持多线程并行采集。采集限制IP的网站时,为保证采集质量及速度需要设置代理IP。

ForeSpider数据采集系统有成熟的代理IP接口,可接入市场上绝大多数的代理IP,兼容性强,操作简单,可自行设置调用IP的频率,灵活控制调用频率,有效降低成本,提高采集效率。


-01- 创建代理IP

打开ForeSpider数据采集引擎,IP代理设置,如下图所示创建代理IP。

前嗅教你大数据:在ForeSpider爬虫软件中设置代理IP

 

1.名称:自定义即可,可由文字、字母、其他符号等组成;

2.类型:有静态代理和动态代理,ForeSpider采集系统中动静态与市场上不同,ForeSpider爬虫软件中代理IP动静态代理可以通过代理IP接入形式来区分静态和动态。

前嗅教你大数据:在ForeSpider爬虫软件中设置代理IP

 

①动态代理:爬虫使用的代理IP是变化的,一般情况是通过代理IP服务商提供的一个API链接来获取代理IP,这种情况是动态代理。在系统中,在如下图标记位置填入API链接。

前嗅教你大数据:在ForeSpider爬虫软件中设置代理IP

 

②静态代理:爬虫使用的代理IP是固定一个/多个IP地址,一般代理IP服务商会提供IP地址、端口、用户名、密码,这种情况是静态代理IP。有的代理IP服务商只有IP地址和端口,这类也是属于静态代理,遇到这种情况时用户名和密码为空即可。

前嗅教你大数据:在ForeSpider爬虫软件中设置代理IP

 

3.请求频率:是指ForeSpider运行时调用每个代理IP的频率,爬虫运行时,线程数目=请求频率*代理IP数。

比如:接入了一个每秒请求10个IP的代理,设置的请求频率为5。那么爬虫运行时,每秒请求50次代理IP,这时候采集运行速度中的线程数目最佳为50。


-02- 代理IP设置

1.动态代理IP设置

前嗅教你大数据:在ForeSpider爬虫软件中设置代理IP

 

在ForeSpider爬虫中,新建一个动态代理IP后,填写以下几个基本参数:

①协议类型:默认http/https,两种协议均支持;

②返回格式:是指返回IP格式,包括TXT和未知格式,选择TXT格式即可返回TXT格式,TXT格式可以不用写脚本获取IP;

③刷新周期:请求调用API的频率,单位是毫秒,根据实际购买情况来填写即可。

④请求地址:填写API链接即可。

填写完以上信息后可点击【测试】按钮进行测试,测试结果会显示在屏幕下方。测试成功后,确认勾选所用代理IP,点击保存按钮,如下图所示:

前嗅教你大数据:在ForeSpider爬虫软件中设置代理IP

 

保存好之后,就可以开始进行数据采集了。

 

2.静态代理IP设置

前嗅教你大数据:在ForeSpider爬虫软件中设置代理IP

 

在ForeSpider爬虫中,新建一个静态代理IP后,需要填写以下参数:

①IP地址:由代理IP服务商提供。

②端口:由代理IP服务商提供。

③类型:根据要采集网站类型来选择,有http和https类型;

④有效时长:可理解为到期时长,非必填。

当同时使用多个代理IP且到期时长不一致时可以根据实际情况填写,有效期到则自动停止使用该代理IP;

当有效时间在1天以内时,建议填写,防止出现代理IP到期,ForeSpider爬虫还在运行而导致采集失败的情况。

如果不填写,需要在代理IP到期之前手动关闭,否则会导致采集失败。如下图所示:

前嗅教你大数据:在ForeSpider爬虫软件中设置代理IP

 

⑤用户名:由代理IP服务商提供。

⑥密码:由代理IP服务商提供。

填写完之后在需要使用的代理IP前打上对勾,打开代理IP按钮,后保存。如下图所示:

前嗅教你大数据:在ForeSpider爬虫软件中设置代理IP

 


-03- 脚本设置

在ForeSpider数据采集系统中,当代理IP接入情况不属于以上描述静态/动态接入方式时,使用脚本设置代理IP。

前嗅教你大数据:在ForeSpider爬虫软件中设置代理IP

 

脚本设置与动态设置类似,需要先把以下几项根据实际情况来进行设置,具体如下:

①协议类型:默认http/https,两种协议均支持;

②返回格式:选择未知格式即可,脚本可获取TXT格式。

③刷新周期:请求调用API的频率,单位是毫秒,根据实际购买情况来填写即可。

④请求地址:填写代理商提供的API链接。

⑤POST DATA:根据代理不同,post请求的情况下填写该内容。

⑥代码编辑区:需要填写一段脚本,以调用代理IP。代码如下:

ips = DOWNDATA.Split('\n');
	var t;
	for(i=0;i<ips.size;i++)
	{
	t = ips[i].TrimAll();
	this.Insert(t,"","",60, "https");  //60秒有效期, 如果有效期为其他,则改相应的数
}

将以上的代码粘贴到编辑框后,通常仅需修改最后一句脚本,括号里分别填写:IP地址+端口、用户名、密码、有效时长、http/https即可。


-04- 其他设置

ForeSpider爬虫系统中,代理IP混用策略有以下三个:

前嗅教你大数据:在ForeSpider爬虫软件中设置代理IP

 

1.采集禁用本地IP

设置后采集只用代理IP,如果代理IP失效或未开启,则会采集失败。

2.代理失败使用本地IP

代理IP失效或者失败后会直接使用本地IP进行采集。

3.只使用本地IP

设置后采集时仅用本地IP。


  • 注意事项

①在采集过程中修改代理IP,需要暂停/停止采集然后再修改。

②当请求代理IP的api地址是变化的,比如链接地址中有时间戳的情况时,ForeSpider中代理IP暂不支持接入。

③当返回内容不带密码,但要求必须提供密码时,可以使用脚本设置来接入。

④在不知道代理IP的请求数时,请求频率最好填1,也可填写1-10中任意数。

⑤请求到一批新的代理IP时,在有效期内的旧代理IP依然可以使用。


作者简介

前嗅,企业级大数据供应商,多年来致力于大数据技术研究与开发,自主研发了一套数据采集、挖掘、清洗、分析及可视化的数据处理系统,拥有上万家企业用户。热衷于为大家解决各种数据问题,服务号“前嗅”,微博“@前嗅大数据”,欢迎关注。

### 回答1: CentOS 7启动httpd服务失败可能有多种原因,以下是一些常见的解决方法: 1. 检查httpd配置文件是否正确:可以使用命令`httpd -t`检查httpd配置文件是否正确,如果有错误,需要修改配置文件。 2. 检查端口是否被占用:可以使用命令`netstat -tlnp`查看端口是否被占用,如果被占用需要释放端口或修改httpd配置文件中的端口号。 3. 检查httpd服务是否安装:可以使用命令`rpm -qa | grep httpd`查看httpd服务是否安装,如果没有安装需要先安装httpd服务。 4. 检查httpd服务是否启动:可以使用命令`systemctl status httpd`查看httpd服务是否启动,如果没有启动需要使用命令`systemctl start httpd`启动httpd服务。 5. 检查SELinux是否开启:如果SELinux开启,可能会导致httpd服务启动失败,需要使用命令`setenforce 0`关闭SELinux,或者修改SELinux策略。 以上是一些常见的解决方法,如果以上方法都无法解决问题,可以查看httpd服务日志文件,找到具体的错误信息,然后根据错误信息进行解决。 ### 回答2: CentOS 7上的httpd服务启动失败可能有多种原因。以下列出了一些常见问题和解决方法: 1. 端口被占用 当httpd试图占用已被其他程序占用的端口时会启动失败。此时可以通过使用`netstat -tunlp`命令检查端口占用情况,然后杀死占用该端口的进程及时释放端口。或者修改httpd的配置文件,将端口修改为未被占用的端口。 2. 配置文件错误 有时httpd服务的配置文件中可能出现错误,例如语法错误或路径错误等等。在启动httpd服务之前,可以使用`apachectl configtest`命令进行检查,如果输出“Syntax OK”,则表示配置文件没有错误。如果出现错误,则需要根据错误提示进行相应修改。 3. 依赖关系问题 如果httpd依赖的其他程序或库缺失,也会导致启动失败。可以通过使用`systemctl status httpd.service`命令来查看httpd服务状态,如果输出“Failed to start”或“Loaded: failed”,则需要检查依赖关系是否完整。 4. SELinux问题 当SELinux启用时,有时会导致httpd服务启动失败。在这种情况下,可以在SELinux上禁用httpd服务,或者修改httpd配置文件解决SELinux相关的问题。 5. 用户权限问题 httpd服务启动可能需要特定的用户权限。如果使用的用户权限不够,则无法启动。可以尝试使用root用户启动httpd服务,或者根据需要修改相应的用户权限。 ### 回答3: CentOS 7中的Apache HTTP服务器(httpd)是一个常见的Web服务器,如果遇到httpd服务启动失败的情况,可能会影响服务器正常的工作和对外服务的稳定性。本文将提供一些可能会导致httpd服务启动失败的原因,并给出相应的解决方法。 1. 端口被占用 如果端口被其他进程占用,httpd服务就无法启动。可以通过 netstat -tulpn 命令查看端口占用情况,并杀死占用该端口的进程。如果端口被 httpd 服务自身占用,可以通过 systemctl restart httpd 命令重启 httpd 服务;如果是其他进程占用了端口,可以通过 kill 命令杀死该进程或更改 httpd.conf 文件配置,将 httpd 服务的端口改为其他空闲端口,重新启动。 2. 配置文件错误 httpd 服务的配置文件通常是 /etc/httpd/conf/httpd.conf,如果其中存在语法错误、权限问题或者其它配置错误,可能会导致 httpd 服务启动出错。可以通过将 httpd.conf 文件备份后删掉,重新执行 yum install httpd 命令安装 httpd 服务,然后手动修改 httpd.conf 文件,逐个检查每个配置项是否正确,确认无误后重启 httpd 服务。 3. SELinux 问题 SELinux 是 CentOS 7中提供的一种安全模块,它可以对系统文件和应用程序进行安全管控。如果 SELinux 配置不正确,可能会阻止 httpd 服务正常启动。可以通过修改 /etc/selinux/config 文件中 SELINUX=disabled 来暂时关闭 SELinux,然后重新启动 httpd 服务;或者一个更优的方式是,根据日志确定问题原因,使用命令 semanage 或者 setsebool 等工具将相关目录或者配置加入到 SELinux 许可列表中,重新启动 httpd 服务,以恢复服务正常工作。 4. 防火墙问题 如果你的 CentOs 7 服务器启用了防火墙,有可能会导致 httpd 服务启动失败。可以通过检查防火墙相关配置来确定问题原因,解决方案是修改防火墙规则,将端口 80 或者 443 等 httpd 服务需要的端口放行,重新启动 httpd 服务。 总之,当遇到 httpd 服务启动失败时,不要慌张,可以先通过日志或者执行命令查看错误信息,找到错误原因,然后根据错误原因一步一步解决问题。在解决问题过程中注意备份原始配置文件,以免造成不必要的损失。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值