当前位置:K88软件开发文章中心编程全书编程全书02 → 文章内容

wordpress采集插件-WP-AutoPost官方教程

减小字体 增大字体 作者:佚名  来源:网上搜集  发布时间:2019-1-4 9:17:42

-->

安装WP-AutoPost

您可以通过从您的WP-AutoPost.ORG帐户下载ZIP文件手动安装WP-AutoPost。

如果您想手动安装WP-AutoPost,请按照下列步骤操作:

  1. 登录您的WP-AutoPost.ORG帐户。
  2. 转到“账户”部分。
  3. 下载您需要的WP-AutoPost插件(ZIP 文件)。
  4. 将下载的 ZIP 文件上传到您网站的’wp-contents/plugins’目录。
  5. 解压该ZIP 文件。这将创建一个目录。
  6. 登录到您的网站,转到“插件”,并启用它。

创建任务及基本设置

创建任务

点击“新建任务”后,输入任务名称,即可创建新任务,创建好新任务之后可以在任务列表中查看到该任务,就可对该任务进行更多设置。

基本设置

点击 “设置” 之后,可在 “基本设置选项卡” 下,进行如下设置:

  • 任务名称:修改任务名称
  • 分类目录:该任务采集文章发布到的分类目录
  • 作者:该任务采集文章的发布作者,必须是wordpress里的注册用户
  • 更新时间间隔:间隔多长时间检测一次该采集任务下是否有新文章可以更新
  • 字符集:采集目标网站的字符集编码,默认为UTF8,如果目标网页字符集编码不是UTF8,抓取的网页会出现乱码,设置正确的字符集即可解决该问题(如何正确设置字符集
  • 下载远程图片:如果该任务下采集的文章里包含图片,可以选择是否下载远程图片到本地服务器,选择下载远程图片可以做以下更多设置:
    • 将下载的图片保存到wordpress媒体库中
    • 将图像保存到 Flickr
    • 将图像保存到七牛云存储
    • 将下载的第一张图片自动设为特色图片
    • 下载的图片自动添加水印,可添加文本水印或图片水印
    • 选择设置图片地址的属性 (如果包含源图片地址的属性不是src,可以在这里做设置)
  • 下载远程附件:如果该任务下采集的文章里包含其他类型附件,可以选择是否下载这些附件文件到本地服务器,选择下载后可以做以下更多设置:
    • 将下载的附件信息保存到wordpress媒体库中
  • 自动标签:选择是否使用自动标签
    • 标签列表:使用自动标签后如果文章包含列表里的关键词,将自动添加标签
    • 匹配完整的单词:该设置对英文文章有效,中文文章请勿启用该设置
  • 自动摘要:可自动将文章中第一段或前面几段文字设为摘要
  • 发表状态:采集发布后文章的状态,可以是:已发布,草稿,等待复审
  • 手动选择性采集:选择是,将手动选择哪些文章可以采集并发布

文章来源设置

在该选项卡下我们需要设置文章来源的?文章列表网址 具体文章的匹配规则

我们以采集”新浪互联网新闻“为例,文章列表网址为http://roll.tech.sina.com.cn/internet_worldlist/index.shtml

因此在 手工指定文章列表网址 中输入该网址即可,如下所示:

之后需要设置该文章列表网址下具体文章网址的匹配规则

文章网址匹配规则

文章网址匹配规则的设置非常简单,无需复杂设置,提供两种匹配模式,可以使用URL通配符匹配,也可以使用CSS选择器进行匹配,通常使用URL通配符匹配较为简单,但有时使用CSS选择器更为精确

1.使用URL通配符匹配

通过点击列表网址?http://roll.tech.sina.com.cn/internet_worldlist/index.shtml?上的文章,我们可以发现每篇文章的URL都为如下结构

http://tech.sina.com.cn/i/2013-06-27/16328485884.shtml

因此将URL中变化的数字或字母替换为通配符 ?(*) ?即可,如:

http://tech.sina.com.cn/i/(*)/(*).shtml

2.使用CSS选择器进行匹配

使用CSS选择器进行匹配,我们只需要设置文章网址的CSS选择器即可,通过查看列表网址http://roll.tech.sina.com.cn/internet_worldlist/index.shtml的源代码即可轻松设置,找到列表网址下文章超链接的代码,如下所示:

可以看到,文章的超链接A标签在class为“contList”的标签内部,因此文章网址的CSS选择器只需要设置为? .contList a? 即可,如下所示:

不知道CSS选择器为何物,一分钟学会如何设置CSS选择器

设置完成之后,不知道设置是否正确,可以点击上图中的测试按钮,如果设置正确,将列出该列表网址下所有文章名称和对应的网页地址,如下所示:

文章抓取设置

在该选项卡下, 我们需要设置文章标题和文章内容的匹配规则,提供两种方式进行设置,推荐使用CSS选择器方式,使用该方式更为简单,精确。(不知道CSS选择器为何物,一分钟学会如何设置CSS选择器)

我们只需要设置文章标题CSS选择器文章内容CSS选择器,即可准确抓取文章标题和文章内容。

在文章来源设置里,我们以采集”新浪互联网新闻“为例,这里还是以该例子讲解,通过查看列表网址http://roll.tech.sina.com.cn/internet_worldlist/index.shtml下某一篇文章的源代码即可轻松设置,例如,我们通过查看某篇具体文章http://tech.sina.com.cn/i/2013-10-18/22298831229.shtml的源代码,如下所示:

可以看到,文章标题在id为“artibodyTitle”的标签内部,因此文章标题CSS选择器只需要设置为??#artibodyTitle? 即可;

同样的,找到文章内容的相关代码:

可以看到,文章内容在id为“artibody”的标签内部,因此文章内容CSS选择器只需要设置为??#artibody? 即可;如下所示:

设置完成之后,可点击测试按钮,输入测试地址,如果设置正确,将显示出文章标题和文章内容,方便检查设置是否正确。

抓取文章分页内容

如果文章内容过长,有多个分页同样可以抓取全部内容,这时需要设置文章分页链接CSS选择器,通过查看具体文章网址源代码,找到分页链接的地方,例如某篇文章分页链接代码如下:

可以看到,分页链接A标签在class为“page-link”的标签内部,因此,文章分页链接CSS选择器设置为 .page-link a 即可,如下所示:

如果勾选 当发表时也分页 时,发表文章也将同样被分页,如果你的wordpress主题不支持 <!- -nextpage- ->?标签,请勿勾选。

内容过滤

文章内容过滤功能,可过滤掉正文中不希望发布的内容(如广告代码,版权信息等),可以使用CSS选择器过滤内容,也可以可设置两个关键词,删除掉两个关键词之间的内容,关键词2可以为空,表示删除掉关键词1之后的所有内容。

使用关键词过滤,如果设置不合适,可能会破坏html的结构,导致页面排版出错。如果可以用CSS选择器过滤内容,推荐使用CSS选择器方式,简单、精确、不会出错

如下所示,我们通过测试抓取文章后发现文章里有不希望发布的内容,切换到HTML显示,找到该内容的html代码,可以使用CSS选择器,也可以分别设置两个关键词即可过滤掉该内容。

1.使用CSS选择器方式

2.使用关键词方式

如果需要过滤掉多处内容,可以添加多组设置。

HTML标签过滤

支持HTML标签过滤功能,可过滤掉采集文章中的超链接,<script>和<style>等标签下不必要的代码。

如果只过滤掉文章中的超链接,只需输入 a 即可,是否删除标签内容选择否

如果要过滤掉文章中包含的<script>或<style>不必要的代码,只需输入对应标签名称,是否删除标签内容选择是

关键词替换

支持正文标题关键词替换,支持正文自定义链接;

例如:需要将文章里的wordpress自动添加链接到http://wordpress.org/,只需设置wordpress?替换为?<a href=”http://wordpress.org/”>wordpress</a>

Auto Link 可以在发布文章的时候自动添加上关键词链接,也可以对已经发布的内容增加关键词链接

为什么产生乱码

WP-AutoPost 采集网页时默认字符集为UTF-8,如果目标网页的字符集不是UTF-8,采集的内容可能会出现乱码。

解决乱码问题

解决方法非常简单,只需查看目标网页的字符集,设置正确的字符集即可。

打开目标网页源代码,一般在最前面的位置,找到有charset的代码部分:

如上所示,该网页的目标编码为gb2312,设置相同的字符集即可:

如何设置CSS选择器

要使用WP-AutoPost设置采集规则,只需要掌握基本的CSS选择器知识即可。

如需学习更多可以参考http://www.w3schools.com/cssref/css_selectors.asp

基础选择器

选择器示例含义
h1标签选择器,匹配所有使用<h1>标签的元素
a标签选择器,匹配所有使用<a>标签的元素
.infoclass选择器,匹配所有class属性等于info的元素
#infoid选择器,匹配所有id属性等于footer的元素

class选择器前面有?. 号,? .some_word

id选择器使前面有?# 号,?#some_word

例如某篇文章的标题HTML代码如下:

因此该文章标题的CSS选择器就是 ?.entry-title

如果是:

该文章标题的CSS选择器就是??#artibodyTitle

例如某篇文章的正文内容HTML代码如下:

该文章内容的CSS选择器就是??.entry

后代元素选择器

选择器示例含义
div ?p匹配所有在<div>元素内部的<p>标签元素
div ?li ?a匹配所有在<li>元素内部的<a>标签元素,并且<li>元素又在<div>元素内部
.contList ?a匹配所有在?class属性等于contList元素内部?的<a>标签元素
#contList ?a匹配所有在?id属性等于contList元素内部?的<a>标签元素
#contList ?li ?a匹配所有在 <li>元素内部的<a>标签元素,并且<li>元素又在?id属性等于contList元素内部?

后代元素选择器,每个元素之间用空格隔开

例如要设置文章来源选项卡里的文章网址CSS选择器,文章列表网址里每篇文章超链接HTML代码如下:

因为每篇文章的网址(a 标签)都在class=“contList”的元素内部,所以该文章网址CSS选择器可以设置为 ?.contList ?a

在上面例子中因为<a>标签也在<li>标签内部,因此也可以设置为?.contList ?li ?a

同理<li>标签又在<ul>标签内部,因此也可以设置为?.contList ?ul ?li ?a

以上3个设置都是等价的。

如何申请微软翻译客户端密钥?

1. 创建 Windows Azure Marketplace 帐户

首先访问 https://datamarket.azure.com/ 注册 Windows Azure Marketplace 帐户,如果有微软的账户(live.com、live.cn、hotmail.com、outlook.com),使用微软账户登陆即可注册即可。

2. 订阅 Microsoft Translator

访问 https://datamarket.azure.com/dataset/bing/microsofttranslator 订阅 Microsoft Translator

3. 注册应用程序

访问 https://datamarket.azure.com/developer/applications/register 注册你的应用程序,获取 客户端ID客户端密钥

使用获取的 客户端ID客户端密钥 填入插件中对应的设置页面即可。

如果每月2,000,000字符的免费翻译数量不够用的话,可以重复申请多组密钥即可,插件可支持设置多组密钥,如果设置多组密钥,使用过程中会随机调用密钥,如果某个密钥无法翻译成功,会尝试使用其他密钥,提高稳定性。

如何申请百度翻译API Key?

1. 注册百度开发者账号

首先登陆 http://developers.baidu.com/,注册百度账户,如已有百度账户,直接登陆即可。

普通用户登陆之后,注册为百度开发者账户,如图所示,之后按要求填写相关信息提交即可注册成为开发者账户。

2. 成功注册为开发者账户之后,即可创建应用获得API Key

开发者注册成功之后,访问页面 http://developers.baidu.com/, 进入开发者服务管理页面。

之后,创建一个工程,如下所示:

随意填写应用的名称,如:My-Test-API

之后即能获得一个API Key,如下所示:

如何获取并设置Cookie采集需要登录才能浏览的内容?

如果要采集需要登录后才能浏览的内容,那么就需要设置cookie,获取和设置cookie非常简单。

获取cookie我们需要用到下面这个绿色软件?WebCookiesSniffer。

点击下载?WebCookiesSniffer.zip

解压之后打开?WebCookiesSniffer界面,点击开始的那个箭头。

之后在浏览器中访问已经登录好的网站,在?WebCookiesSniffer 中找到该网站的路径,选中之后点击鼠标右键打开选项菜单,点击打开?Properties窗口

之后在 Properties 窗口下复制 Cookies String的内容?到插件cookie设置处保存即可。

保存之后,可以进行测试,输入需要登录才能浏览的URL,如果cookie设置正确,测试之后就能看到需要登录之后才能浏览的内容。


wordpress采集插件-WP-AutoPost官方教程