Допустим, я хочу передать ввод по конвейеру программе Python, а затем получить ввод от пользователя в командной строке.
echo http://example.com/image.jpg | python solve_captcha.py
и содержимое Solve_captcha.py
:
import sys
image_url = sys.stdin.readline()
# Download and open the captcha...
captcha = raw_input("Solve this captcha:")
# do some processing...
Вышеупомянутое вызовет ошибку EOFError: EOF при чтении строки
.
Я также попытался добавить sys.stdin.close ()
, в которой возникла ошибка ValueError: операция ввода-вывода для закрытого файла
.
Можете ли вы передать информацию по конвейеру на stdin
, а затем получить ввод от пользователя?
Примечание: Это урезанный, упрощенный пример - пожалуйста, не отвечайте, говоря "почему вы хотите сделать это в первом случае, "это действительно неприятно. Я просто хочу знать, можете ли вы передать информацию по конвейеру на stdin
, а затем попросить пользователя ввести данные.