감사합니다.Perl wget이 "greping"하지 않습니다.
이 루프합니다 ($ _ 변수에) URL을 제공하고
foreach(@my_array) {
$browser->get($_);
system ("wget -q -O -\"$_\" | grep -oe '\\w*.\\w*@.\\w*.\\w\\+' | sort -u");
}
print EMAILS;
질문을 볼 수 있습니다 내 생각은 처리를 위해 wget과 각 URL을 보낼 수 있었다 :
1)를 grep은 grep하지 않으며 $ URL을 얻습니다. $
2) 출력 파일에 결과를 올바르게 전송하지 못하는 것 같습니다. EMAILS는 위의 라인에서 생성 된 출력 파일의 핸들.
3) 나는 퍼팅, 다른 변형을 시도 A> 경우 output.txt
system ("wget -q -O -\"$_\" | grep -oe '\\w*.\\w*@.\\w*.\\w\\+' > output.txt| sort -u");
, 그 괄호에 포함하지만
무시됩니다 크롤링 동안4) 질문은 해당 그렙이 완료되었는지 여부 서버에서 또는 wget 모든 파일을 다운로드하고 내 컴퓨터 grep 모든 이메일에서 다음? 당연히 전체 웹 사이트를 다운로드하고 싶지 않습니다.
당신에게 wget을가 (모든 파일을 다운로드) 완료 후
시스템 호출이 무엇을하고 있는지 설명하지 않는 이유는 무엇입니까? 다운로드 한 웹 페이지를 grep하려고하십니까? – TLP
예, wget은 $ _에 들어있는 이동해야하는 URL을받습니다. 전체 웹을 통해 크롤링해야하므로 -r 재귀 명령이 있습니다. grep이 이메일을 가져옵니다. 그러나 출력 파일에서 wget의 URL 목록 만 가져 왔지만 grep은 쉘에서 작동했지만 grep이 perl 명령에서 전자 메일을 전달하지 않습니다. – iaintunderstand