나는 다음과 같은 명령이 : 나는 파이썬 변수에이 명령의 출력을 설정하기 위해 노력하고있어파이썬 하위 프로세스로 복잡한 명령을 변환
$ ffmpeg -i http://url/1video.mp4 2>&1 | perl -lane 'print $1 if /(\d+x\d+)/'
640x360
합니다. 여기에 내가 지금까지 가지고있는 것입니다 :
>>> from subprocess import Popen, PIPE
>>> p1 = Popen(['ffmpeg', '-i', 'http://url/1video.mp4', '2>&1'], stdout=PIPE)
>>> p2=Popen(['perl','-lane','print $1 if /(\d+x\d+)/'], stdin=p1.stdout, stdout=PIPE)
>>> dimensions = p2.communicate()[0]
''
여기에서 내가 뭘 잘못하고 있으며 치수에 올바른 값을 얻을 수 있습니까? 일반적으로
나는 perl을 모르지만, 펄 인터프리터를 생성하지 않고도 파이썬에서 그렇게 할 수있을 것이라고 확신한다. 해결책을 찾으려면'2> & 1'을 삭제 해보십시오. – utdemir