导航:首页 > IDC知识 > 网站域名采集

网站域名采集

发布时间:2020-10-17 11:25:20

1、如何抓取一个网址下的所有页面链接 ?

由于题目是放在【编程语言】栏目下的,但没有指定希望使用哪种编程语言,我选择使用java语言来实现。

在Java中,使用HttpURLConnection即可连接URL,随后可以使用InputStreamReader获取网页内容文本。然后,使用正则表达式解析网页内容文本,找到所有的<a>标签即实现需求。

以下是详细代码:

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.ArrayList;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class HtmlParser {
 /**
  * 要分析的网页
  */
 String htmlUrl;
 /**
  * 分析结果
  */
 ArrayList<String> hrefList = new ArrayList();
 /**
  * 网页编码方式
  */
 String charSet;
 public HtmlParser(String htmlUrl) {
  // TODO 自动生成的构造函数存根
  this.htmlUrl = htmlUrl;
 }
 /**
  * 获取分析结果
  * 
  * @throws IOException
  */
 public ArrayList<String> getHrefList() throws IOException {
  parser();
  return hrefList;
 }
 /**
  * 解析网页链接
  * 
  * @return
  * @throws IOException
  */
 private void parser() throws IOException {
  URL url = new URL(htmlUrl);
  HttpURLConnection connection = (HttpURLConnection) url.openConnection();
  connection.setDoOutput(true);
  String contenttype = connection.getContentType();
  charSet = getCharset(contenttype);
  InputStreamReader isr = new InputStreamReader(
    connection.getInputStream(), charSet);
  BufferedReader br = new BufferedReader(isr);
  String str = null, rs = null;
  while ((str = br.readLine()) != null) {
   rs = getHref(str);
   if (rs != null)
    hrefList.add(rs);
  }
 }
 /**
  * 获取网页编码方式
  * 
  * @param str
  */
 private String getCharset(String str) {
  Pattern pattern = Pattern.compile("charset=.*");
  Matcher matcher = pattern.matcher(str);
  if (matcher.find())
   return matcher.group(0).split("charset=")[1];
  return null;
 }
 /**
  * 从一行字符串中读取链接
  * 
  * @return
  */
 private String getHref(String str) {
  Pattern pattern = Pattern.compile("<a href=.*</a>");
  Matcher matcher = pattern.matcher(str);
  if (matcher.find())
   return matcher.group(0);
  return null;
 }
 public static void main(String[] arg) throws IOException {
  HtmlParser a = new HtmlParser("http://news.163.com/");
  ArrayList<String> hrefList = a.getHrefList();
  for (int i = 0; i < hrefList.size(); i++)
   System.out.println(hrefList.get(i));
 }
}

2、如何批量提取网站所有的URL链接

有谁会这样提交sitemap,提交sitemap是不用全部链接都提交的,只需要列出主要分类就行了,站内的其他链接百度自然会去找的

3、有没有可以像百度爬虫一样的python程序。把中国所有域名都采集保存下来。希望有大哥可以给我一份,

你表达的不是很清楚!
采集域名有啥用?
你是说采集每个正常运行的域名下的网站内容吗?

但我得告诉,这个程序很多,搜索引擎很多人都写过!但你得有硬件成本才行啊!中国啊,多少个网站!你如果你用单台电脑采集,估计你的从现在开始到你老死还采集不完!百度的服务器数量已经数以万计,懂吗?

如果你只采集几个特定的网站,还可以搞的定啊

4、如何采集一个国家的所有域名.fr

这个还真不好统计,可能要联系注册商或者注册局问了,可以看看top

5、求一个匹配域名采集的正则表达式,比如 www.yuming.com 我要匹配页面中所有包含域名 :yuming 的链接

string pattern="(http://){0,1}(/w/d)*.yuming.(com|cn|net)";
解析:(http://){0,1}指示无论域名出现时是否带有http://字样都要进行匹配。
(/w/d)*:指示无论出现二级域名与否,只要带有yuming字样都要进行匹配
yuming指你要采集的域名,你自行替换吧。
(com|net|cn):要取域名的后缀,根据需要,你可以自行添加或删减。
这个表达式相比较来说比做蜘蛛程序的表达式容易写,你应当研究一下。做.net采集,不会正则无疑是瘸了条腿。

6、想问一下,有没有那款网络爬虫是根据特定关键词,来采集互联网上所有域名的主页含有特定的关键词。

前嗅的 ForeSpider数据采集系统可以,你这是数据挖掘的需求,ForeSpider可以设置关键词搜索,结合数据挖掘,挖掘对应的网页内容,或域名什么的。

7、如何采集导航里面网站域名和网站名字?

有很多采集器可以使用,如果只要采集标题和链接的话,很容易 的。建议用火车头

8、网站api域名授权代码,我有个电影资源网站,想实现域名授权才能采集,那位大神能帮忙写段代码?

你这个花括号怎么这么乱,
大概看了下 auth相当于一个检索文件,提交 url GET参数过去返回json数据,解json有一个code的key。如果是1就是已授权,其他就是没授权


写一个文件 query.php 内容如下
<?php
echo json_encode(array('code'=>1));
?>
即可,有问题请回复,没问题请采纳谢谢

9、常见的信息采集工具有哪些?

1、NSLOOKUP

nslookup命令几乎在所有的PC操作系统上都有安装,用于查询DNS的记录,查看域名解析是否正常,在网络故障的时候用来诊断网络问题。信息安全人员,可以通过返回的信息进行信息搜集。

2、DIG

Dig也是对DNS信息进行搜集的工具,dig 相比nsllooup不光功能更丰富,首先通过默认的上连DNS服务器去查询对应的IP地址,然后再以设置的dnsserver为上连DNS服务器。

3、Whois

whois就是一个用来查询域名是否已经被注册,以及注册域名的详细信息的数据库(如域名所有人、域名注册商)。通过whois来实现对域名信息的查询。早期的whois查询多以命令列接口存在,但是现在出现了一些网页接口简化的线上查询工具,可以一次向不同的数据库查询。

网页接口的查询工具仍然依赖whois协议向服务器发送查询请求,命令列接口的工具仍然被系统管理员广泛使用。whois通常使用TCP协议43端口。每个域名/IP的whois信息由对应的管理机构保存。

5、主动信息搜集

Recon-ng是一个信息搜集的框架,它之于信息搜集完全可以和exploit之于metasploit framework、社会工程学之于SET。

5、主动信息搜集

主动信息搜集是利用一些工具和手段,与搜集的目标发生一些交互,从而获得目标信息的一种行为。主动信息搜集的过程中无法避免会留下一些痕迹。

10、批量域名采集器的真正用处是什么?

信息时代一个好的域名够给您的网站带来超大的访问量、也就给你的企业带来超大的利益,通常人们会一个一个去手工查询,这样非常慢也非常费力。只要你设置域名位数,如前缀或后缀,加上你自定义的字母或数字,软件即可批量采集出相关的域名来进行查询。

与网站域名采集相关的知识