Zum Inhalt wechseln

Als Gast hast du nur eingeschränkten Zugriff!


Anmelden 

Benutzerkonto erstellen

Du bist nicht angemeldet und hast somit nur einen sehr eingeschränkten Zugriff auf die Features unserer Community.
Um vollen Zugriff zu erlangen musst du dir einen Account erstellen. Der Vorgang sollte nicht länger als 1 Minute dauern.

  • Antworte auf Themen oder erstelle deine eigenen.
  • Schalte dir alle Downloads mit Highspeed & ohne Wartezeit frei.
  • Erhalte Zugriff auf alle Bereiche und entdecke interessante Inhalte.
  • Tausche dich mich anderen Usern in der Shoutbox oder via PN aus.
 

   

Foto

[Python] URL Statuscode Checker

- - - - -

  • Bitte melde dich an um zu Antworten
2 Antworten in diesem Thema

#1
sup3ria

sup3ria

    Hacker

  • Premium Member
  • Likes
    123
  • 177 Beiträge
  • 50 Bedankt
#Muss noch gevent und requests installiert werden.
#Aufruf: python chkr.py in.txt out.txt threadanzahl
#bsp: python chkr.py urls.txt out.txt 1000

#wird async verarbeitet.

#-*- coding: iso-8859-1 -*-
import gevent # sudo apt-get install python-gevent // pip install gevent
from gevent.queue import Queue
Queue = Queue()
from timeit import default_timer as timer
import requests# pip install requests
import sys

print "URL Status Code Checker - by sup3ria"
print ""

#----------------------------------
if sys.argv[1:]:
    file_in  = sys.argv[1]
else:
	file_in = "in.txt"
	
if sys.argv[2:]:
    file_out  = sys.argv[2]
else:
	file_out = "out.txt"
	
if sys.argv[3:]:
    workers  = int(sys.argv[3])+1
else:
	workers = 11

#----------------------------------

def get(i):
    while not Queue.empty():
            url = Queue.get()
            try:
                r = requests.get(url)
                status = r.status_code
                status_to_write =  str(url).strip()  +" | "+ str(status).strip() 
                print status_to_write   
                write(status_to_write)    
            except:
                pass          
            gevent.sleep(0.1)
            
            

def sender():
    with open(file_in, "rt") as text_file:
        for line in text_file:
            if len(line.strip()) >1:
                Queue.put_nowait(line)

def write(valid):
    with open(file_out, 'a') as file:
        file.write('{}'.format(valid))
        
def asynchronous():
    threads = []
    start = timer()
    for i in range(1,workers):
        threads.append(gevent.spawn(get, i))
    gevent.joinall(threads, timeout=5)
    end = timer()
    return "Time passed: " +str(end - start)[:4]


gevent.spawn(sender).join()
print asynchronous()


  • hacked gefällt das

Thanked by 1 Member:
hacked

#2
bumg2

bumg2

    Hacktivist

  • Banned
  • PIPPIPPIPPIPPIP
  • Likes
    67
  • 53 Beiträge
  • 130 Bedankt
  • Android, Android [root], iPhone
  • Linux
Du machst bei jedem Schreibvorgang das File auf, ist dies gewollt?

webapp audits: megalodon, safeloader, acrom, neutrino
malware analyse: pony-1.9 @ tb


#3
sup3ria

sup3ria

    Hacker

  • Premium Member
  • Likes
    123
  • 177 Beiträge
  • 50 Bedankt

Du machst bei jedem Schreibvorgang das File auf, ist dies gewollt?

Ja, da die greenlets nicht von einander Dinge erben können.





  Thema Forum Themenstarter Statistik Letzter Beitrag

Besucher die dieses Thema lesen:

Mitglieder: , Gäste: , unsichtbare Mitglieder:


This topic has been visited by 57 user(s)


    Ar@m!s, b.giuseppe74, b0kerst3l, B1nary, BayernFox, Born2Hack, brucereed64, bumg2, Bypass, c3fC, Ch!ller, Cube, cyberbitch, DataBase, Dean36, Delta, desmond, Dr. Spic, Emalik Xantier, Exynos, fAYe, fluffybunny, Framerater, frechdax, g0rillaz, Goooofy, gutzuu, hacked, Hedrek, JohnR, keyb0ardz, kingkev0, kiwitone, Kiyoko, lNobodyl, loken, mettbrot, netSecMushroom, opheus, p3p31337, PaulaAbdul, pdr0, peppi200, rat123, saske46, smc2014, Stanley, stoneserv, sup3ria, Swiper, sys1910, Take1T, Twiy1, umarex, x4r4x, xMarvvx, xVirtu
Die besten Hacking Tools zum downloaden : Released, Leaked, Cracked. Größte deutschsprachige Hacker Sammlung.