批量获取TDK H1等SEO信息,网页标题|关键字|描述批量查询 悬赏1元 已结束
平时我们做SEO工作的时候,可能需要获取一批页面的tdk一类的SEO信息,但一个个页面复制粘贴太慢,而且还非常容易出错。所以我准备做一款可以帮我批量获取tdk、h1信息的程序。这样无论有多少页面,我都可以轻松搞定了。
功能介绍:
第一步:把所有需要查询的URL放入urls.txt中
第二步:运行程序,信息自动生成到excel文件中,方便后续操作
程序介绍:
urls.txt
- 这个文件是用来放url列表的,每行一条;
- 需要手工新建文件、添加、删除url
- 程序支持url数量不限,但建议每次不要超过50条;
excelFile.xls
- 这个文件是用来放TDK,H1信息;
- 程序自动生成不需要手动新建,程序运行成功后自动生成
- 生成位置是在程序所在目录里
- 可以在程序中修改文件名称 file_name = '{}.xls'.format('excelFile')
- excel中的信息顺序是:title,h1,keywords,description
spider_url_list_title.py
- python程序,python版本3.7.4
- 建议使用PyCharm
- 使用到的库:requests(2.22.0)、pyquery(1.4.0)、xlwt(1.3.0) 没有的需要安装后再运行
主要文件spider_url_list_title.py 代码如下:
#!/usr/bin/env python
# -*- encoding: utf-8 -*-
# Author: 陈小龙SEO
# 程序更新、问题反馈→ http://loooooong.com/296
# 程序更新、问题反馈→ 陈小龙SEO(公众号),陈小龙SEO部落(知识星球)
# Created on 2020年7月3日16:25:11
import requests
import time
from pyquery import PyQuery
import xlwt
import sys
def urls():
'''
获取urls.txt文件中的内容,并生成url列表
:return: url列表
'''
try:
with open('urls.txt', 'r') as f:
url_str = f.read()
url_list = url_str.split('\n')
except FileNotFoundError as e:
print('没有找到urls.txt;请检查urls.txt是否存在,是否和程序在同一目录中,错误内容:{}'.format(e))
sys.exit()
return url_list
def spider(url):
ls = requests
try:
req = ls.get(url)
time.sleep(0.5) # 避免给网站服务器压力
except Exception as e:
print('抓取页面时出现错误,请检查urls.txt是否符合规范,错误内容:{}'.format(e))
return False
return req
def tdkh(req):
'''
获取页面的TDK h1 信息
:param req:
:return:
'''
try:
req = PyQuery(req.text)
title = req('title').text()
keywords = req('[name=keywords]').attr('content')
description = req('[name=description]').attr('content')
h1 = req('h1').text()
except Exception as e:
print('页面分析出现错误,错误内容:{}'.format(e))
return False, False, False, False
return title, h1, keywords, description
def save(file_name):
'''
存储TDK信息到excel中
:param file_name:
:return:
'''
try:
myWorkbook.save(file_name)
except PermissionError:
print('请退出{}后在运行本程序'.format(file_name))
sys.exit()
urllist = urls() # 1. 获取url列表
myWorkbook = xlwt.Workbook() # 2. 创建Excel工作薄
mySheet = myWorkbook.add_sheet('陈小龙SEO工具') # 3. 添加Excel工作表
file_name = '{}.xls'.format('excelFile') # 文件名称,可以修改
save(file_name)
errer_urls = [] # 存储出现错误的url
for i in range(len(urllist)):
url = urllist[i]
if url == '':
print('跳过空行')
continue
req = spider(url)
if req is False:
print('页面抓取出现错误,自动跳过,url:{}'.format(url))
errer_urls.append(url)
continue
title, h1, keywords, description = tdkh(req)
if title is False:
print('页面分析出现错误,自动跳过,url:{}'.format(url))
errer_urls.append(url)
continue
# 生成excl内容
mySheet.write(i, 0, title)
mySheet.write(i, 1, h1)
mySheet.write(i, 2, keywords)
mySheet.write(i, 3, description)
save(file_name)
print('程序运行完成……\n 抓取URL{}个'.format(len(urllist)))
if len(errer_urls) is not 0:
print('一下是出现错误的url,你可以检查url错误后重新加入')
for u in errer_urls:
print(u)
27 人参与回答
权重蜘蛛-池出租丨支持测试 等 1 人赞同该回答
TDK平时改的也不是很多,批量的话还得改完后在对一遍,还不如自己改。总之,谢谢分享,有需要的可以用个哈
权重蜘蛛-池出租丨支持测试 等 1 人赞同该回答
厉害了
权重蜘蛛-池出租丨支持测试 等 1 人赞同该回答
不需要这种东西把
权重蜘蛛-池出租丨支持测试 等 1 人赞同该回答
前来学习一下
权重蜘蛛-池出租丨支持测试 等 1 人赞同该回答
然而采集工具就有这个功能
权重蜘蛛-池出租丨支持测试 等 1 人赞同该回答
直接采集不就行了
权重蜘蛛-池出租丨支持测试 等 1 人赞同该回答
采集器
权重蜘蛛-池出租丨支持测试 等 1 人赞同该回答
滑屏有点长
权重蜘蛛-池出租丨支持测试 等 1 人赞同该回答
学习了
权重蜘蛛-池出租丨支持测试 等 1 人赞同该回答
还是支持一下喜欢研究的人
权重蜘蛛-池出租丨支持测试 等 1 人赞同该回答
我是来看看的 这个配图。。
权重蜘蛛-池出租丨支持测试 等 1 人赞同该回答
还是手动编辑比较哦好吧,如果确实要批量做,可以用火车头采集软件来操作
权重蜘蛛-池出租丨支持测试 等 1 人赞同该回答
还是选择手动吧
何
权重蜘蛛-池出租丨支持测试 等 1 人赞同该回答
这。。
回复问答禁止带推广链接、违法词及灌水,违规将封禁账号!!了解合理带链接的方法
本贴交流超时,回复已关闭
专栏文章