最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python實現(xiàn)的百度站長自動URL提交小工具

 更新時間:2014年06月27日 11:22:48   投稿:junjie  
這篇文章主要介紹了Python實現(xiàn)的百度站長自動URL提交小工具,主要難點在驗證碼識別部分,研究驗證碼識別的朋友可以參考下

URL提交是百度提供的一個站長工具,用于給站長提供手工收錄某些URL的接口,但是該接口有驗證碼識別部分,比較難弄。所以編寫了如下程序進行驗證碼自動識別:

主要思路

獲取多個驗證碼,提交到 http://lab.ocrking.com/ 進行多次識別,然后計算每個驗證碼圖片識別出來的 字母或數(shù)字 進行統(tǒng)計,得出統(tǒng)計率最高的 即為驗證碼。

復(fù)制代碼 代碼如下:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import requests
import time
import json
import re
 
 
if __name__ == "__main__":
    i = 1
    s = requests.session()
    s.headers.update({'Referer':'http://zhanzhang.baidu.com/sitesubmit/index','User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.154 Safari/537.36'})
    r = s.get('http://zhanzhang.baidu.com/sitesubmit/index')
    s2 = requests.session()
    r = s.post('http://zhanzhang.baidu.com/captcha',data={'async':'false','n':time.time()})
    url = json.loads(r.content)['url']
    temp = []
    while 1:
        try:
            r = s.get(url)
            img_data = r.content
            r = s2.get('http://lab.ocrking.com/')
            try:
                content = ' '.join(r.content.split())
                sid =  re.findall(r'"sid" : "(.+?)"',content)[0]
                hash_1 = re.findall(r'"hash" : "(.+?)"',content)[0]
                timestamp = re.findall(r'"timestamp" : "(.+?)"',content)[0]
            except:
                print 'error on get orking info!'
                continue
            files = {'Filedata':('icode.jpeg', img_data)}
            data  = {'Filename':'icode.jpeg','sid':sid,'hash':hash_1,'timestamp':timestamp}
            r = s2.post('http://lab.ocrking.com/upload.html',files = files,data= data)
            r = s2.post('http://lab.ocrking.com/ocrking.html',data={'upfile':r.content,'type':'captcha','charset':'7'})
            icode = re.findall(r'<OcrResult>(.+?)</OcrResult>',r.content)[0]
            if len(icode) != 4 :
                continue
            temp.append(icode)
            i = i + 1
            if i == 3 :
                break
        except Exception,e:
            print e
            pass
 
    a = {'0':{},'1':{},'2':{},'3':{}}
    for aa in temp:
        i = 0
        while i <=3 :
            try:
                a[str(i)][aa[i]] =  a[str(i)][aa[i]] + 1
            except:
                a[str(i)][aa[i]] = 1
            i = i + 1
    icode = ['','','','']
    for index in a:
        temp_times = 0
        for index_1 in a[index]:
            if a[index][index_1] >= temp_times :
                temp_times = a[index][index_1]
                icode[int(index)] = index_1
 
    icode =  ''.join(icode)
 
    img_name = 'temp\\'+icode+'.png'
    file_object = open(img_name, 'w')
    file_object.write(img_data)
    file_object.close()
 
 
 
    #r = s.post('http://zhanzhang.baidu.com/sitesubmit/sitepost',data={'url':'http://lab.ocrking.com/','captcha':icode})
 
    #print r.content

相關(guān)文章

  • Pycharm學習教程(3) 代碼運行調(diào)試

    Pycharm學習教程(3) 代碼運行調(diào)試

    這篇文章主要為大家詳細介紹了最全的Pycharm學習教程第三篇代碼運行調(diào)試,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • 使用Python發(fā)送Post請求以及解析響應(yīng)結(jié)果

    使用Python發(fā)送Post請求以及解析響應(yīng)結(jié)果

    發(fā)送post的請求參考例子很簡單,實際遇到的情況卻是很復(fù)雜的,下面這篇文章主要給大家介紹了關(guān)于如何使用Python發(fā)送Post請求以及解析響應(yīng)結(jié)果的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-06-06
  • 舉例講解Linux系統(tǒng)下Python調(diào)用系統(tǒng)Shell的方法

    舉例講解Linux系統(tǒng)下Python調(diào)用系統(tǒng)Shell的方法

    這篇文章主要介紹了舉例講解Linux系統(tǒng)下Python調(diào)用系統(tǒng)Shell的方法,包括用Python和shell讀取文件某一行的實例,需要的朋友可以參考下
    2015-11-11
  • python書籍信息爬蟲實例

    python書籍信息爬蟲實例

    這篇文章主要為大家詳細介紹了python書籍信息爬蟲示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • Python基礎(chǔ)第三方模塊requests openpyxl

    Python基礎(chǔ)第三方模塊requests openpyxl

    這篇文章主要為大家介紹了Python基礎(chǔ)第三方模塊requests openpyxl使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-11-11
  • python OpenCV的imread不能讀取中文路徑問題及解決

    python OpenCV的imread不能讀取中文路徑問題及解決

    這篇文章主要介紹了python OpenCV的imread不能讀取中文路徑問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • Python中列表復(fù)制的常用方法解析

    Python中列表復(fù)制的常用方法解析

    在Python編程中,經(jīng)常需要對列表進行復(fù)制或克隆操作,以便保護原始數(shù)據(jù)或創(chuàng)建獨立的副本,本文將詳細介紹如何在Python中進行列表克隆,以及如何選擇合適的方法來保護數(shù)據(jù),希望對大家有所幫助
    2024-02-02
  • 淺析Python中的弱引用與基礎(chǔ)類型支持情況

    淺析Python中的弱引用與基礎(chǔ)類型支持情況

    最近有一個業(yè)務(wù)場景需要用Python自行實現(xiàn)一個簡單的LRU cache,不可避免的接觸到了弱引用這一概念,所以下面就來和大家分享一下相關(guān)的知識吧
    2023-07-07
  • 基于Python實現(xiàn)一個PDF特殊字體提取工具

    基于Python實現(xiàn)一個PDF特殊字體提取工具

    在PDF文檔處理場景中,我們常常需要針對特定格式的文本內(nèi)容進行提取分析,本文介紹的"PDF特殊字體提取器"是一款基于Python開發(fā)的桌面應(yīng)用程序感興趣的小伙伴跟著小編一起來看看吧
    2025-03-03
  • Python常見內(nèi)置高效率函數(shù)用法示例

    Python常見內(nèi)置高效率函數(shù)用法示例

    這篇文章主要介紹了Python常見內(nèi)置高效率函數(shù)用法,結(jié)合實例形式分析了Python中filter()、map()、reduce()、lambda匿名函數(shù)等功能與簡單使用技巧,需要的朋友可以參考下
    2018-07-07

最新評論

呼和浩特市| 舒城县| 夏邑县| 平罗县| 山西省| 黄山市| 古交市| 保亭| 锡林浩特市| 杭州市| 刚察县| 渑池县| 罗平县| 城固县| 高唐县| 仙居县| 千阳县| 珲春市| 霞浦县| 泰安市| 凭祥市| 乐昌市| 济源市| 南昌市| 两当县| 贵溪市| 化德县| 盐池县| 泰顺县| 张北县| 开封县| 台湾省| 光泽县| 五峰| 广安市| 多伦县| 华容县| 盘山县| 青州市| 白河县| 临邑县|