zoukankan      html  css  js  c++  java
  • Python批量查询网站收录

    本文转自贾定强的博客,稳重链接都没去掉。http://www.jiadingqiang.com/python%E6%89%B9%E9%87%8F%E6%9F%A5%E8%AF%A2%E7%BD%91%E7%AB%99%E6%94%B6%E5%BD%95/

    网站收录是网站seo优化的第一步,只有有了收录才有可能获得排名,进而获得流量。今天跟大家分享一个批量查询网站收录情况的python脚本。

    import random
    import time
    from win32com.client import Dispatch
    
    urlFileName = "urlFile.txt"
    outputFileName = "result.txt"
    minWaitTime = 1
    maxWaitTime = 15
    
    outputFile = open(outputFileName, 'w')
    
    ie = Dispatch("InternetExplorer.Application")
    ie.visible = 1
    
    baseUrl = 'http://www.google.com'
    
    ie.navigate('http://www.google.com')
    
    while (ie.ReadyState != 4):
        time.sleep(1)
    
    print '页面载入完结'
    
    with open(urlFileName) as urlFile:
        for url in urlFile:
            # 这个是页面是下一次请求等待的时间,
            # 你可以修改上面minWaitTime和maxWaitTime的值来设置等待时间.
            # 下面的time.sleep(1)不是请求之间的等待时间
            waitTime = random.randint(minWaitTime, maxWaitTime)
            time.sleep(waitTime)
    
            url = url.strip()
            while(True):
                try:
                    ie.Document.forms[0].elements["q"].value="site:" + url
                    ie.Document.forms[0].submit()
    
                    # 这个地方以前有错误是因为url里面有斜线,我测试的时候没有测试到
                    # 斜线要换成%2F,分号要换成%3A,如果还有其它的特殊字符也还要换。
                    checkUrl = url.replace('/', '%2F')
                    checkUrl = checkUrl.replace(':', '%3A')
                    checkUrl = checkUrl.replace('?', '%3F')
                    checkUrl = checkUrl.replace('=', '%3D')
    
                    while (ie.ReadyState != 4 or str(ie.LocationURL).find(checkUrl) == -1):
                        # print str(ie.LocationURL)
                        time.sleep(1)
    
                    result = ie.Document.getElementById("ires").innerHTML
    
                    if len(result)>0:
                        print url, "recored"
                        outputFile.write(url + ":recored\n")
                    else:
                        print url, "not recored"
                        outputFile.write(url + ":not recored\n")
    
                    break
                except:
                    time.sleep(60)
                    ie.navigate(baseUrl)
    
    outputFile.close()
    

      

    使用方法:在配置完python的运行环境,并安装了win32com包之后,在与脚本同目录下放一个urlFile.txt文件,里面每行放一个你要查询的网址,然后运行程序就可以查询urlFile.txt文件里所有网址的收录情况了。

    如果你想查询一个比较小型的网站的收录情况的话,你可以用sitemap生成工具生成网站的sitemap,或者直接使用网站根目录下的sitemap.xml,然后用excel或其他工具将sitemap中的网址提取出来,放在urlFile.txt文件中,就可以用这个简单的python脚本来查询网站的收录情况了。

  • 相关阅读:
    三数之和
    罗马数字与整数
    Oracle 开启或关闭归档
    Oracle RMAN scripts to delete archivelog
    Oracle check TBS usage
    Oracle kill locked sessions
    场景9 深入RAC运行原理
    场景7 Data Guard
    场景4 Data Warehouse Management 数据仓库
    场景5 Performance Management
  • 原文地址:https://www.cnblogs.com/alexkh/p/2770157.html
Copyright © 2011-2022 走看看