seo外链工具网站源码(外链对网站优化来说是一个加分项,外链越多、质量越高)
优采云 发布时间: 2022-03-05 05:05seo外链工具网站源码(外链对网站优化来说是一个加分项,外链越多、质量越高)
原则
对于一个新站点来说,增加收录的几率是重中之重,但是蜘蛛主动爬取可能需要几周甚至几个月的时间,所以我们必须想办法提高蜘蛛的爬取能力。抓住机会,努力优化 网站。外部链接是 网站 优化的加分项。外链越多,质量越高,对网站的优化效果越好。通常互联网上有很多外链发送工具。其实就是将网站域名推送到各大网站平台的接口。一般来说,大型网站平台都有缓存机制,百度蜘蛛会抓取。如果频率比较高,那么发送到网站的域名就有机会被百度蜘蛛抢到。如果一个大网站推荐一个小网站,重量会更容易上去。基本的。
代码实现1、uiMain.py
PyQt5实现接口
# -*- coding: utf-8 -*-
# @Time : 2021/12/16 14:36
# @FileName: uiMain.py
# @Mail: lizhigen1996@aliyun.com
__author__ = 'Zhigen.li'
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
MainWindow.setObjectName("MainWindow")
MainWindow.resize(800, 600)
self.centralwidget = QtWidgets.QWidget(MainWindow)
self.centralwidget.setObjectName("centralwidget")
self.label = QtWidgets.QLabel(self.centralwidget)
self.label.setGeometry(QtCore.QRect(180, 70, 371, 71))
self.label.setObjectName("label")
self.label.setOpenExternalLinks(True)
self.label.setText(u' 疯狂外链发送工具 ')
self.label_2 = QtWidgets.QLabel(self.centralwidget)
self.label_2.setGeometry(QtCore.QRect(120, 164, 72, 21))
font = QtGui.QFont()
font.setFamily("Arial")
font.setPointSize(11)
font.setBold(True)
font.setWeight(75)
self.label_2.setFont(font)
self.label_2.setObjectName("label_2")
self.domain_lineEdit = QtWidgets.QLineEdit(self.centralwidget)
self.domain_lineEdit.setGeometry(QtCore.QRect(180, 160, 331, 31))
self.domain_lineEdit.setObjectName("domain_lineEdit")
self.go_pushButton = QtWidgets.QPushButton(self.centralwidget)
self.go_pushButton.setGeometry(QtCore.QRect(520, 160, 93, 28))
font = QtGui.QFont()
font.setFamily("Arial")
font.setPointSize(12)
font.setBold(True)
font.setWeight(75)
self.go_pushButton.setFont(font)
self.go_pushButton.setObjectName("go_pushButton")
self.progressBar = QtWidgets.QProgressBar(self.centralwidget)
self.progressBar.setGeometry(QtCore.QRect(100, 490, 511, 23))
self.progressBar.setProperty("value", 24)
self.progressBar.setObjectName("progressBar")
self.show_label = QtWidgets.QLabel(self.centralwidget)
self.show_label.setGeometry(QtCore.QRect(120, 210, 561, 16))
self.show_label.setText("")
self.show_label.setObjectName("show_label")
self.textBrowser = QtWidgets.QTextBrowser(self.centralwidget)
self.textBrowser.setGeometry(QtCore.QRect(130, 270, 511, 151))
self.textBrowser.setObjectName("textBrowser")
MainWindow.setCentralWidget(self.centralwidget)
self.menubar = QtWidgets.QMenuBar(MainWindow)
self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 26))
self.menubar.setObjectName("menubar")
MainWindow.setMenuBar(self.menubar)
self.statusbar = QtWidgets.QStatusBar(MainWindow)
self.statusbar.setObjectName("statusbar")
MainWindow.setStatusBar(self.statusbar)
# font = QtGui.QFont()
# font.setFamily("Arial")
# font.setPointSize(25)
# font.setBold(True)
# font.setWeight(75)
# self.label.setFont(font)
self.retranslateUi(MainWindow)
QtCore.QMetaObject.connectSlotsByName(MainWindow)
def retranslateUi(self, MainWindow):
_translate = QtCore.QCoreApplication.translate
MainWindow.setWindowTitle(_translate("MainWindow", "疯狂外链发送工具"))
self.label_2.setText(_translate("MainWindow", "http://"))
self.domain_lineEdit.setText(_translate("MainWindow", "www.zhigen.cool"))
self.go_pushButton.setText(_translate("MainWindow", "Go"))
2、service.py
拼接url实现url推送机制
# -*- coding: utf-8 -*-
# @Time : 2021/12/16 14:36
# @FileName: servic.py
# @Mail: lizhigen1996@aliyun.com
__author__ = 'Zhigen.li'
from data import urls
import urllib3
import requests
import re
import time
import random
from PyQt5.QtCore import QThread, pyqtSignal
requests.packages.urllib3.disable_warnings()
ua_list = [
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/22.0.1207.1 Safari/537.1",
"Mozilla/5.0 (X11; CrOS i686 2268.111.0) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.57 Safari/536.11",
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.6 (KHTML, like Gecko) Chrome/20.0.1092.0 Safari/536.6",
"Mozilla/5.0 (Windows NT 6.2) AppleWebKit/536.6 (KHTML, like Gecko) Chrome/20.0.1090.0 Safari/536.6",
'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36'
]
class SendUrlsThread(QThread):
progress_signal = pyqtSignal(float, int, str)
def __init__(self, domain):
super(SendUrlsThread, self).__init__()
self.domain = domain
def run(self):
total = len(urls)
print(total, self.domain)
i = 0
for url in urls:
pcount = len(re.findall('{}', url))
args = [self.domain for i in range(pcount)]
url = url.format(*args)
self.send(url)
i = i + 1
current = round(i / total * 1.0 * 100, 2)
if current == 100:
url = url + '\n完成'
self.progress_signal.emit(current, i, url)
def send(self, url):
try:
user_agent = random.choice(ua_list)
headers = {'User-Agent': user_agent}
res = requests.get(url, headers=headers, timeout=3, verify=False)
if res.status_code == 200:
return True
except Exception as e:
print(e)
在:
requests.packages.urllib3.disable_warnings()
可以消除请求警告
3、数据.py
获取各大平台的url
# -*- coding: utf-8 -*-
# @Time : 2021/12/16 14:36
# @FileName: data.py
# @Mail: lizhigen1996@aliyun.com
__author__ = 'Zhigen.li'
import re
urls = [
"https://www.36kr.com/search/articles/{}",
"https://www.xbeian.com/ga2_{}.html",
"https://i.zzbbx.com/?weburl={}",
"https://pr.alexa.cn/index.php?url={}",
"https://tool.alexa.cn/?url={}&RandPasswd=123",
"https://whois.toolsky.com/?domain={}",
"https://pr.toolsky.com/pr.asp?domain={}",
"https://www.sumotorrent.com/en/search/{}",
"https://alexa.toolsky.com/?url={}",
"https://www.920a.com/{}.html",
]
with open('./rawdata.txt', 'r', encoding='utf-8')as fp:
rawdata = fp.read()
reList = re.findall('src="(\\S+)"', rawdata)
print(reList)
print(len(reList))
for url in reList:
url = url.replace('www.zhigen.cool', '{}')
urls.append(url)
# if True:
# with open('./urls.csv', 'w') as fp:
# fp.write('\n'.join(urls))
if __name__ == '__main__':
pass
4、main.py
集成功能实现外链发布
# -*- coding: utf-8 -*-
# @Time : 2021/12/16 14:36
# @FileName: main.py
# @Mail: lizhigen1996@aliyun.com
__author__ = 'Zhigen.li'
from PyQt5.QtWidgets import QMainWindow, QApplication
import sys
from service import SendUrlsThread
from uiMain import Ui_MainWindow
class MainWindow(QMainWindow, Ui_MainWindow):
def __init__(self, parent=None):
super(MainWindow, self).__init__(parent)
self.setupUi(self)
self.progressBar.setVisible(False)
self.progressBar.reset()
self.progressBar.setValue(0)
self.logstr = ''
self.go_pushButton.clicked.connect(self.go_clicked)
def go_clicked(self):
self.go_pushButton.setDisabled(True)
domain = self.domain_lineEdit.text()
self.progressBar.setVisible(True)
sendService = SendUrlsThread(domain)
sendService.progress_signal.connect(self.change_progressbar_value)
sendService.start()
sendService.exec()
def change_progressbar_value(self,value, num, url):
# print(value)
self.progressBar.setValue(value)
self.show_label.setText(url)
if value == 100:
self.go_pushButton.setDisabled(False)
log = '[{}] {}'.format(num, url)
self.textBrowser.append(log)
else:
log = '[{}] {}'.format(num, url)
self.textBrowser.append(log)
if __name__ == "__main__":
app = QApplication(sys.argv)
mainWin = MainWindow()
mainWin.show()
sys.exit(app.exec_())
5、运行
所有代码如上图,UI界面不是必须的,可以整合这段代码,使用apscheduler设置定时任务,每天定时运行。有需要的话下次可以用apscheduler,也可以自己百度一下。所有代码已经打包在下面的链接中,包括各大平台的url。