在前几天写的一建抓取网站所有链接的脚步往后衍生了以下的两个脚步,一个是查询网站友情链接,另一个是查询网站的死链。我这里只是初步实现了功能,还有很多地方需要优化,比如说查询友情链接脚步会存在带www与不带www不能共存识别的问题,查询网站死链的脚步运行好慢的问题,这个问题是我目前解决不了的,我的能力还有限。

很多人说,爬虫学的好,“劳烦”吃的 饱。所以,在爬虫教程中,都会劝说大家善良,但是我现在能力有限,可以随便放开造,如果有喜欢一起学习的朋友,可以加我微信,相互讨论,共同学习。下面分享这两个脚步源代码,供大家欣赏,^_^。

一、友情链接查询

Python

import requestsfrom bs4 import BeautifulSoup

import timeurl=input("输入主域名:")headers={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36'}def shouye():    r=requests.get(url,headers=headers)    soup=BeautifulSoup(r.content.decode('utf-8',"ignore"),'lxml')    suoyoua=soup.find_all('a')    alla=[]for lia in suoyoua:        dana=lia.get("href")try:if dana.find('http')!=-1 and dana.find(url) == -1:                alla.append(dana)except:continue# 去重    alla=sorted(set(alla), key=alla.index)    fanhui(alla)def fanhui(alla):for duiurl in alla:try:            r=requests.get(duiurl,headers=headers)except:print('该网站打不开', duiurl)continuetry:            soup = BeautifulSoup(r.content.decode('utf-8',"ignore"), 'lxml')except Exception as ex:print(duiurl,ex)        suoyoua = soup.find_all('a')        sya=[]for lia in suoyoua:            dana = lia.get("href")            sya.append(dana)        sya=str(sya)if sya.find(url)==-1:print('该网站没有我们网站链接',duiurl)

if __name__ == '__main__':    startime = time.time()    shouye()    endtime = time.time()

    thetime=endtime-startimeprint(thetime)

二、死链接查询

Python

import requestsfrom bs4 import BeautifulSoup

# 进程from threading import Threadimport time

bbb=[]jishu=0

def shouye():global jishu    url=input("输入主域名:")    headers={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36'}    r=requests.get(url,headers=headers)    soup=BeautifulSoup(r.content.decode('utf-8'),'lxml')    suoyoua=soup.find_all('a')    alla=[]for lia in suoyoua:        dana=lia.get("href")        alla.append(dana)

# 去重    alla=sorted(set(alla), key=alla.index)

# 开启多线程    t_list = []for lianjie in alla:

for i in range(5):            t = Thread(target=neiye, args=(lianjie, url))            t_list.append(t)            t.start()# 回收线程for t in t_list:            t.join()

def neiye(lianjie,url):global bbb    headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36'}if lianjie.find(url)!=-1:        ciurl= lianjieelif lianjie.find('http')==-1 and lianjie.find('/')!=-1:        ciurl=url + lianjieelse:        ciurl = url + '/' + lianjie

    r = requests.get(ciurl , headers=headers)

    bba=[]    alla = []try:        soup = BeautifulSoup(r.content.decode('utf-8'), 'lxml')        suoyoua = soup.find_all('a')except:        bba.append(ciurl)

else:for lia in suoyoua:try:                dana = lia.get("href")except:continue

            alla.append(dana)

# 去重    alla = sorted(set(alla), key=alla.index)global jishufor lian2 in alla:if lian2 in bbb:continueelse:            bbb.append(lian2)            neiye(lian2,url)

if __name__ == '__main__':    startime = time.time()    shouye()    bbb = sorted(set(bbb), key=bbb.index)    num=0for ads in bbb:if ads.find('http')!=-1:            ads=adselse:            ads='http://zhuxiaoedu.com'+adsprint(num, ads)        num += 1        headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36'}try:            r = requests.get(ads, headers=headers)

except Exception as e:print(e)continueprint(r.status_code)

    endtime = time.time()

    thetime=endtime-startimeprint(thetime)

python实现网站测速软件_python实现网站友情链接查询与网站死链接查询的两个脚步...相关推荐

  1. python实现网站测速软件_网站测速插件是什么-和网站测速插件相关的问题-阿里云开发者社区...

    回2楼ivmmff的帖子 工作太忙了 一口气写不完 ......... 在这里写完了 在移动过去 ------------------------- Re网站加速指南-GoogleAnalytics- ...

  2. centos php github,在CentOS服务器上安装配置SpeedTest测速软件

    本文讲述在CentOS 7服务器上安装配置SpeedTest测速软件.SpeedTest网站是全球范围的测速网站,一些大型的主机商都会使用它来测试速度.在某些时候,我们的服务器也要进行测试.当然要是在 ...

  3. 计算机打字测速,电脑的打字测速软件分享

    对于电脑工作人员来说,打字是我们每天都会接触的,作为网站编辑来说,每天就是打字,打字,打字,因此,打字速度一定不能慢,不然就会大大的影响工作效率.下面是学习啦小编为大家整理的关于电脑的打字测速软件分享 ...

  4. 计算机打字测速,5款打字测速软件分享,打字练习、测速两不误

    对于电脑办公人员来说,打字是我们每天都会接触的,像小编我对于打字是印象颇深的,作为网站编辑来说,每天就是打字,打字,打字,因此,打字速度一定不能慢,否则,就会大大的影响工作效率.对于打字速度慢的小伙伴 ...

  5. 香港服务器几种网站测速的方法

    现在有很多朋友租用香港服务器,但是在租用香港服务器之前,我们必须先测试一下服务器的访问速度. 而且,慢的网站速度也可以通过CDN来加速,如下: 因为香港服务器的访问速度对于网站来说非常重要,尤其是网站 ...

  6. 电脑测速软件_不服跑个分!常见固态硬盘测速工具性价比盘点(上)

    尽管不像CPU的核心或线程数量那样直观,固态硬盘性能在近几年电脑硬件中确实增长迅速.不同类型的测速软件也是五花八门,不服跑个分之后,我们能从分数中得到什么?又会因为这次跑分对硬盘产生多少写入量? 笔者 ...

  7. 手机打字测速软件简版

    写了个测速软件,有什么不足的地方还望指教,我是个菜鸟 package com.example.typespeed; import java.util.Random; import android.os ...

  8. 安兔兔电脑ssd测试软件,不服跑个分?安兔兔推出了一款固态硬盘测速软件

    原标题:不服跑个分?安兔兔推出了一款固态硬盘测速软件 专注手机性能评测的安兔兔最近发布了一款SSD固态发硬盘测试工具!由于安兔兔是一家小米投资的企业,不少网友纷纷猜测:小米是不是要出固态硬盘了? 存储 ...

  9. 测试手机速度的软件叫什么,手机测网速哪个软件好? 精确测速软件推荐

    随着智能手机的普及,现在人们几乎已经人手一部手机.4G网络在我国已经非常的普及了,但是我们在使用手机时时常还是会发现会出现断网的情况,严重的影响了我们的工作以及上网体验,特别是在我们看视频或者打游戏时 ...

最新文章

  1. python实现卡方(Chi-Squared Test)相关性检验
  2. mysql pma用户_MYSQL用户权限管理学习笔记
  3. Silverlight2 边学边练 之五 视频
  4. [置顶]Java Web学习总结(25)——MyEclipse+Tomcat+MAVEN+SVN项目完整环境搭建...
  5. 精简三星Galaxy III 迷你版 自带无用软件
  6. ACL 2018论文解读 | 基于路径的实体图关系抽取模型
  7. List、Array与ArrayList
  8. 如何选择适合你的企业数据管理类产品
  9. 【实操手册】如何把一场直播录制下来?
  10. 设计模式(一) 六大原则
  11. “三权分立”模型之角色模型
  12. 意念控制头环:用脑电波来操控智能家居
  13. 教程:个人深度学习工作站配置指南
  14. Activity简单几步支持向右滑动返回
  15. linux系统安装geany文本编辑器
  16. Android中注解处理器系列之-简单使用
  17. 音视频基础知识——素材理解
  18. 好消息,个人也可以申请支付宝支付了
  19. 力扣——883. 三维形体投影面积(Java、JavaScript、C实现)
  20. zabbix===》微信报警、聚合图形、自动发现自动注册、监控NFS、MySQL、web服务、URL地址

热门文章

  1. Bailian4077 出栈序列统计【卡特兰数】(vijos P1122)
  2. CCF201604-2 俄罗斯方块(100分)
  3. color2gray 的实现
  4. 【奇葩笔试】—— printf() 作为函数的参数及其返回值
  5. leetcode(226)—— Invert Binary Tree(Python/C++)
  6. python工资这么高为什么不学-一个来自35岁职场高管的忠告:Python为什么不得不学?...
  7. python编程入门 适合于零基础朋友-Python不能帮你找到女朋友,却能让你成为有钱的单身狗。...
  8. python能做什么游戏-你也可以用Python开发出一款火遍全球的游戏!
  9. 自学python需要安装什么-初学 Python 需要安装哪些软件?
  10. python就业方向-看完Python这五大就业方向的薪资待遇,你选择哪个?