YouTube 재생 목록 페이지를 스크래핑하는 동안 일부 Regex 코드에 문제가 있습니다. 그것은 대부분 잘 작동하지만 이상한 결과Regex 문제 - YouTube 스크랩
의 몇 가지를 따기표현 : 골라 무엇의
(?<=v=)[a-zA-Z0-9-_]+(?=&)|(?<=[0-9]/)[^&\n]+|(?<=v=)[^&\n]+
예 :이
https://www.youtube.com/watch?v=_ClmClS_Mqs&list=PL6422619E56951B73&index=5&feature=plpp_video
같은 링크에서
yXBckFyiMyU,
opWYnUpNtG8,
YFbLRZCExBk,
I_GZahAl-PQ,
G6F_iP-F7Fw
대부분이 부분은 정상적으로 작동하는 것처럼 보입니다. 그러나이 인스턴스도 선택 중입니다.
data-thumb="//i1.ytimg.com/vi/84GVRtJ1CvY/<FROM RIGHT ONWARDS IS WHAT IT MATCHES>default.jpg" ><span class="vertical-align"></span></span></span></span>
data-thumb="//i4.ytimg.com/vi/WNIPqafd4As/<FROM RIGHT ONWARDS IS WHAT IT MATCHES>default.jpg" alt="" class="thumb"></span></span></span><span class="clip"><span class="centering-offset"><span class="centering"><span class="ie7-vertical-align-hack">
Regex는 다소 위압적입니다. 누구든지 표현이 잘못되었다는 것을 알고 있습니까?
당신이 요소의 트리를 구축하는 일부 HTML 파서를 사용하여 고려했으며, 만 볼 수있는 링크 정규 표현식을 적용 그 나무에? [Here] (http://stackoverflow.com/a/1732454/960195)는 정규 표현식과 전용 구문 분석기를 사용하여 HTML을 구문 분석하는 해학적 인 의견입니다. –
@ Adam : 우리는 임의의 HTML을 구문 분석하려고하지 않고 URL 만 분석합니다. Cthulu/Tony the Pony는 정규 표현식으로 이것을 시도하기 위해 당신의 영혼을 소비하지 않을 것입니다. (적절한 HTML과 URL 구문 분석 라이브러리가 여전히 권장됩니다.) 좋은 대답은 –