Скрипт Python не печатает вывод в командной строке

Мне нужен совет со скриптом Python. Я все еще новичок и научился этому сам. Скрипт нашел в гугле. После того, как я перепечатаю его, он не печатает результат в консоли. Как можно вывести результат работы скрипта в консоль? Детали, как показано ниже:

C:\Python27>test1.py af8978b1797b72acfff9595a5a2a373ec3d9106d

C:\Питон27>

После того, как я нажимаю ввод, ничего не происходит. Должен ли быть показан результат или нет?

Вот код, который я перепечатал:

#!/usr/bin/python
#coding: ascii

import requests
import sys
import re

url = 'http://hashtoolkit.com/reverse-hash?hash='
try:
    hash = sys.argv[1]
except:
     print ("usage: python "+sys.argv[0]+" hash")
sys.exit()

http = request.get(url+hash)
content = http.content
cracked = re.findall("<span title=\*decrypted (md5|sha1|sha384|sha512) hash\*>(.*)</span>", content) # expression regular
print ("\n\tAlgoritmo: "+cracked[0][0])
print ("\tPassword Cracked: "+cracked[0][1])

person Ajinata    schedule 10.11.2017    source источник


Ответы (2)


Первая строка в вашем скрипте называется Shebang line. Строка Shebang указывает сценарию запускать интерпретатор Python из этого места.

Предоставленная вами строка shebang представляет собой системный путь Linux, но она выглядит с пути, из которого вы выполняете Python, который вы используете в Windows.

Вы можете сделать одну из двух вещей здесь, чтобы исправить это:

  • Удалите линию Шебанге.
  1. Удалите первую строку из вашего скрипта.
  2. Выполните скрипт, используя python test1.py COMMAND_LINE_ARGUMENTS
  • Измените свою линию Shebang.
  1. Измените первую строку вашего скрипта с !/usr/bin/python на #!python (предполагается, что python находится в вашей системной переменной PATH).

  2. Выполните скрипт, используя test1.py COMMAND_LINE_ARGUMENTS

Кроме того, вы пытаетесь импортировать модуль requests, который не установлен в стандартной библиотеке.

Если вы еще не установили это, вы можете сделать это, перейдя в каталог установки Python и перейдя в папку scripts.

Удерживая shift, щелкните правой кнопкой мыши и перейдите Open command window here

Введите pip install requests и нажмите Enter.

После этого вы должны быть готовы к работе, выполните скрипт, перейдя к нему и набрав test.py COMMAND_LINE_ARGUMENT

Если скрипт Python не имеет shebang line:

python test.py COMMAND_LINE_ARGUMENT

person Jebby    schedule 10.11.2017
comment
хороший ответ! но я рекомендую вам переписать свой ответ в формате красоты ... - person DRPK; 10.11.2017
comment
Если shebangs поддерживаются в Windows, это связано с тем, что файлы .py связаны с программой запуска Python 3 py.exe. Средство запуска поддерживает общие пути Unix в шебангах, таких как !/usr/bin/python, которые предпочтут самую высокую версию Python 2, установленную вместо Python 3, поскольку python в системах Unix обычно является Python 2. Строка шебанга не требуется. Программа запуска будет использовать версию по умолчанию, если шебанг не будет найден; кроме того, некоторые (обычно 2.x) установки напрямую связывают .py с python.exe. Прочтите документы. - person Eryk Sun; 11.11.2017
comment
уже сделано, как советовали, но все равно происходит то же самое. результат не отображается на экране cmd promt - person Ajinata; 11.11.2017
comment
после того, как введите скрипт test1.py command_line_argument и выполните, верните ничего - person Ajinata; 11.11.2017
comment
@Ajinata После небольшого изучения вашего кода я увидел, что sys.exit() не находится внутри вашего блока except. Сделайте отступ sys.exit(), чтобы он совпадал с отступом над ним. Кроме того, http = request.get(url+hash) должно быть http = requests.get(url+hash) - person Jebby; 11.11.2017
comment
@Jebby, спасибо, приятель. постараюсь исправить и обновить как можно скорее. - person Ajinata; 16.11.2017

вам нужно запустить свой скрипт с помощью python. пытаться:

C:\Python27>python test1.py af8978b1797b72acfff9595a5a2a373ec3d9106d
person punkrockpolly    schedule 10.11.2017
comment
У него есть строка шебанга в верхней части его сценария. Это говорит сценарию автоматически использовать Python. Он просто использует линуксовый шебанг вместо виндовс. - person Jebby; 10.11.2017
comment
ах... заметил. постараюсь модифицировать скрипт.tks чувак - person Ajinata; 11.11.2017