已有的域名信息

详细实现过程如下

  1. #!/usr/bin/env python
  2. # -*- coding:utf-8 -*-
  3. import requests
  4. from bs4 import BeautifulSoup as Bs4
  5. from urllib.parse import urlparse
  6. headers= {
  7. "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36"
  8. }
  9. #打开域名文件1.txt
  10. def new_url():
  11. url_list = []
  12. bo = open("1.txt","r")
  13. for i in bo:
  14. url_list.append(i.replace("\n",""))
  15. return(url_list)
  16. #数据处理
  17. def get_url():
  18. head_url = new_url()
  19. num = 0
  20. for i in head_url: #按行遍历数据
  21. num = num +1
  22. print("***********************************"+ i +"***********************************")
  23. # head_url = "https://www.tkcp.hk/"
  24. try:
  25. response = requests.get(url="http://"+i,headers=headers)
  26. response.encoding = 'gb2312'
  27. soup = Bs4(response.text,"lxml")
  28. # print(soup)
  29. htmls = soup.find_all("a") #获取页面中的所有a标签
  30. # print(htmls)
  31. urls = []
  32. new_urls = []
  33. for html in htmls:
  34. url = html.get("href") #获取页面中所有含"href"的字符串
  35. urls.append(url.replace('\n',''))
  36. qc_urls = set(urls)
  37. for url in qc_urls: #处理数据,得到域名地址
  38. if "http" in url:
  39. res = urlparse(url)
  40. # print("返回对象:", res)
  41. # print("域名", res.netloc)
  42. domain = res.netloc
  43. new_urls.append(domain)
  44. qc_new_urls = set(set(new_urls))
  45. #print("***********************************"+num+"***********************************")
  46. print(set(qc_new_urls)) #去重
  47. for j in set(qc_new_urls):
  48. # print(j)
  49. with open("url_v1.txt","a+",encoding="utf-8") as f:
  50. f.write(j+"\n")
  51. except Exception as e:
  52. print("链接无法访问")
  53. result_list = []
  54. result = open("./url_v1.txt","r")
  55. for r in result.readlines():
  56. result_list.append(r.replace("\n",""))
  57. for x in set(result_list): #二次数据处理,去掉重复数据
  58. with open("url_end_V.txt","a+",encoding="utf-8") as f:
  59. print(x)
  60. f.write(x+"\n")
  61. if __name__=="__main__":
  62. get_url()

python3 获取博彩网站页面下所有域名(批量)的更多相关文章

  1. 获取博客积分排名,存入数据库,读取数据进行绘图(python,selenium,matplotlib)

    该脚本的目的:获取博客的排名和积分,将抓取时间,排名,积分存入数据库,然后把最近的积分和排名信息进行绘图,查看积分或者排名的变化情况. 整个脚本的流程:是利用python3来编写,利用selnium获 ...

  2. Python3.x:selenium获取iframe内嵌页面的源码

    Python3.x:selenium获取iframe内嵌页面的源码 前言 在一些网页中经常会看到ifrmae/frame标签,iframe是嵌入式框架一般用来在已有的页面中嵌入另一个页面,当一个元素在 ...

  3. Linux下-LNMP环境搭建博客网站(全过程)

    通常我们所说的LNMP是指一个网站基本的组织框架,即Linux系统支持,Nginx静态服务,Mysql数据库支持以及PHP动态编程语言支持.目前Mysql数据库被Oracle数据库分析公司收购,其创始 ...

  4. 通过Iframe在A网站页面内嵌入空白页面的方式,跨域获取B网站的数据返回给A网站!

    以下代码只是为演示该方法具体是如何操作的,实际的意义并不大. 其实这个方法还可以解决很多方面的跨域操作,以下两点为我工作中遇到的情况! 比如A系统中打开B系统页面的时候,获取B系统页面高度,A系统中可 ...

  5. 使用vue全家桶制作博客网站

    前面的话 笔者在做一个完整的博客上线项目,包括前台.后台.后端接口和服务器配置.本文将详细介绍使用vue全家桶制作的博客网站 概述 该项目是基于vue全家桶(vue.vue-router.vuex.v ...

  6. 转载: 使用vue全家桶制作博客网站 HTML5 移动网站制作的好教程

    使用vue全家桶制作博客网站   前面的话 笔者在做一个完整的博客上线项目,包括前台.后台.后端接口和服务器配置.本文将详细介绍使用vue全家桶制作的博客网站 概述 该项目是基于vue全家桶(vue. ...

  7. [转载]关于CSDN, cnblog, iteye和51cto四个博客网站的比较与分析

    CSDN:http://blog.csdn.net/ cnblog: http://www.cnblogs.com/ iteye: http://www.iteye.com/blogs/ 51cto: ...

  8. 关于CSDN, cnblog, iteye和51cto四个博客网站的比较与分析

      http://blog.csdn.net/pkucl1/article/details/6629819 CSDN: http://blog.csdn.net/ cnblog: http://www ...

  9. Django搭建博客网站(三)

    Django搭建博客网站(三) 第三篇主要记录view层的逻辑和template. Django搭建博客网站(一) Django搭建博客网站(二) 结构 网站结构决定我要实现什么view. 我主要要用 ...

随机推荐

  1. 洛谷 P6225 [eJOI2019]异或橙子 (树状数组)

    题意:有\(n\)个数,起始值均为\(0\),进行\(q\)次操作,每次输入三个数,如果第一个数为\(1\),则将第\(i\)个数修改为\(j\),如果为\(2\),则求区间\([l,r]\)内的所有 ...

  2. 考研路茫茫——单词情结 HDU - 2243 AC自动机 && 矩阵快速幂

    背单词,始终是复习英语的重要环节.在荒废了3年大学生涯后,Lele也终于要开始背单词了. 一天,Lele在某本单词书上看到了一个根据词根来背单词的方法.比如"ab",放在单词前一般 ...

  3. [已完成+附代码]CS:APP:Lab6-ShellLab

    由于我的第五个实验的partB部分一直出问题.而且修了好久没解决先不管了 这个实验建议一定要认真读完csapp全书的第八章.不然可能会毫无思路.千万不要上来直接做. 0. 环境配置和实验下载 利用do ...

  4. Dapr微服务应用开发系列1:环境配置

    题记:上篇Dapr系列文章简要介绍了Dapr,这篇来谈一下开发和运行环境配置 本机开发环境配置 安装Docker 为了方便进行Dapr开发,最好(其实不一定必须)首先在本机(开发机器)上安装Docke ...

  5. 自动化将 word 转为 pdf,再将pdf转为图片!

    参考: https://blog.csdn.net/ynyn2013/article/details/49120731 https://www.jianshu.com/p/f57cc64b9f5e 一 ...

  6. Redis 管理命令

    INFO 命令 # 查看redis相关信息 127.0.0.1:6379> info # 服务端信息 # Server # 版本号 redis_version:3.2.12 # redis版本控 ...

  7. 在kubernetes集群里集成Apollo配置中心(1)之交付Apollo-adminservice至Kubernetes集群

    1.部署apollo-adminservice软件包 apollo-adminservice软件包链接地址:https://github.com/ctripcorp/apollo/releases/d ...

  8. docker的FAQ

    1.Docker能在非Linux平台(Windows+MacOS)上运行吗? 答:可以 2 .如何将一台宿主机的docker环境迁移到另外一台宿主机? 答:停止Docker服务,将整个docker存储 ...

  9. 深入理解gradle中的task

    目录 简介 定义task tasks 集合类 Task 之间的依赖 定义task之间的顺序 给task一些描述 task的条件执行 task rule Finalizer tasks 总结 深入理解g ...

  10. Linux bash script regex auto replace

    Linux bash script regex auto replace 自动替换 /assets/css/0.styles.96df394b.css => ./assets/css/0.sty ...