干货教程:转:dedecms织梦自带采集插件详细图文教程
优采云 发布时间: 2022-11-22 22:23干货教程:转:dedecms织梦自带采集插件详细图文教程
看到很多网友都为DEDE CMS的采集
教程头疼。确实,官方教程太笼统了,什么都不说。您无法在其他网站上执行任何操作。本教程是最详细的教程。让你一目了然
首先我们打开Dreamweaving后台,点击采集-采集节点管理-添加新节点
这里以采集普通文章为例,我们选择普通文章,然后确认
我们进入了采集设置页面,填写了节点名称,就是给这个新节点起一个名字,这里可以填写。
然后打开你要采集
的文章列表页面,这里我们以梦织官网为例打开这个页面,右键-查看源文件
找到目标页面编码,就在charset后面
页面基本信息等一般忽略,填写后如图
现在让我们填写列表url抓取规则
看文章列表第一页的地址
比较第二页的地址
我们发现它们除了49_后面的数字是一样的,所以我们可以这样写
(*).html
把1换成(*)就可以了,因为这里只有2页,所以我们从1填到2,每页递增,当然是1,2-1...等于1
我们完成了
可能你采集
的有些列表没有规则,所以你要手动指定列表的URL,如图
每行写一个页地址
列表规则写好后,我们就开始写文章URL匹配规则,返回文章列表页面
右键查看源文件,找到区域开头的HTML,就是文章列表开头的标志。
" />
我们可以很容易的找到如图所示的“新闻列表”。从这里开始,以下是文章列表
让我们在文章列表的末尾找到 HTML
就是这个,很容易找到的标志
如果链接收录
图片:这里不把合集处理成缩略图根据自己的需要选择
重新过滤区域 URL:
(使用正则表达式)
必须收录
:(优先于后者)
不能收录
:
打开源文件,我们可以清楚的看到文章链接都是以.html结尾的
所以,我们填写.html后一定要include。如果遇到一些比较麻烦的列表,也可以把不能收录
的都填进去。
我们点击Save Settings进入下一步,可以看到我们获取到的文章的URL
看到这些就对了,我们保存信息,进入下一步设置内容字段获取规则
看文章有没有分页,随便输入一篇文章看。. 我们看到这里的文章没有分页
所以这里我们默认
我们现在找文章标题等,随便输入一篇文章,右击查看源文件
看看这些
根据源码填写
让我们填写文章内容的开头和结尾
" />
同上,找到开始和结束标志
开始:
结束:
如果要对文章中的内容进行过滤,可以写在过滤规则中,比如对文章中的图片进行过滤
选择通用规则
再次检查IMG并确认
这样我们就过滤了文字中的图片
设置完成后点击保存设置并预览
这样的采集规则已经写好了。这很简单。有些网站很难写,但需要更多的工作。
Let's save and start the 采集
- 开始采集
网页一段时间然后采集
结束
来看看我们采集
的文章
456
好像成功了,我们来导出数据
首先选择要导入的列,在弹出的窗口中按“请选择”键选择要导入的列。发布选项这里一般都是默认的,除非你不想马上发布。默认为每批导入 30 个。这里修改不修改都没有关系。通常,选择“排除重复标题”作为附加选项。至于自动生成HTML的选项,建议先不要生成,因为我们还需要批量提取摘要和关键词。
对于词的研究,每个seoer都必须知道,除了比较流行的百度相关搜索词*敏*感*词*,但大部分都集中在drop上-down box 字数,毕竟百度下拉框关键词合集已经泛滥了。
百度下拉的正式名称是百度推荐词(Baidu Suggest Word),民间也称百度联想词或百度下拉菜单。是百度为方便网民搜索,提高输入效率而推出的一项服务。
例如,当我们在百度输入“营销”一词,百度会从推荐词条库中检索出以“营销”一词开头的词条,并按照搜索量从大到小排序。形成一个下拉菜单。百度下拉菜单最大数量为10个。
百度下拉框关键词的含义:
它可以用作长尾词和标题。毕竟,它可以在用户搜索时触发 关键词 搜索选项。
很多人直接用下拉词来引流,比如曝光品牌,引导到指定页面。可以采集
分析竞争对手的相关操作,也可以自己曝光自己的品牌。不同的人有不同的看法!
网上留下了很多下拉词的采集
工具和源码。到这里,这个人渣已经被收拾好了。在这里再分享一次。昨晚有个弟兄问我。事实上,这些事情来来去去。没什么特别的!
版本一:
网页直接抓取,实现下拉词采集
def get_keywords(word):
url=f"https://www.baidu.com/sugrec?pre=1&ie=utf-8&json=1&prod=pc&wd={word}"
html=requests.get(url)
html=html.json()
#print(html)
#print(html['g'])
key_words=[]
for key_word in html['g']:
print(key_word['q'])
key_words.append(key_word['q'])
#print(key_words)
return key_words
版本二:
使用官方接口
例如:
def get_sug(word):
<p>
" />
url = 'https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su?wd=%s&sugmode=2&json=1&p=3&sid=1427_21091_21673_22581&req=2&pbs=%%E5%%BF%%AB%%E6%%89%%8B&csor=2&pwd=%%E5%%BF%%AB%%E6%%89%%8B&cb=jQuery11020924966752020363_1498055470768&_=1498055470781' % word
r = requests.get(url, verify=False) # 请求API接口,取消了HTTPS验证
cont = r.content # 获取返回的内容
res = cont[41: -2].decode('gbk') # 只取返回结果中json格式一段,并且解码为unicode
res_json = json.loads(res) # json格式转换
return res_json['s'] # 返回关键词列表</p>
版本三:
另一个接口地址
def get_word(word):
url=f'http://suggestion.baidu.com/su?wd={word}&sugmode=3&json=1'
html=requests.get(url).text
html=html.replace("window.baidu.sug(",'')
html = html.replace(")", '')
html = html.replace(";", '')
#print(html)
html = json.loads(html)
key_words=html['s']
#print(key_words)
return key_words
本质上二和三性质相同,请大家参考使用!
扩大的视野:
这里有个小技巧,就是在关键词后面输入w,会出现一串拼音w开头的关键词,比如“黄山w”,会出现“黄山温泉”出现,“黄山玩几个天道”,“黄山五绝”等关键词(见上图)。因此,当我们遍历a~z的时候,关键词就会比较多。
def get_more_word(word):
more_word=[]
for i in 'abcdefghijklmnopqrstuvwxyz':
more_word.extend(get_keywords('%s%s'%(word,i)))
<p>
" />
print(more_word)
print(len(more_word))
print(len(list(set(more_word))))
return list(set(more_word)) #去重操作
def get_more_sug(word):
all_words = []
for i in 'abcdefghijklmnopqrstuvwxyz':
all_words += get_sug(word+i) # 遍历字母表 | 利用了上一个函数
print(len(list(set(all_words))))
return list(set(all_words)) # 去重操作</p>
这里选择版本2的界面形式,避免被和谐
但是如果使用requests模块请求证书无效的网站,会直接报错。
可以将verify参数设置为False来解决这个问题
r = requests.get(url, verify=False)
但是设置 verify=False 会抛出一个 InsecureRequestWarning 警告
看起来很糟糕
解决方案:
from requests.packages.urllib3.exceptions import InsecureRequestWarning
# 禁用安全请求警告
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
运行结果
参考源码获取