그래서 나는 IMDB 페이지 http://www.imdb.com/genre/?ref_=nv_ch_gr_3BeautifulSoup로 인덱스
의 장르와 하위 장르에 대한 링크를 구문 분석하려고 이제 다음 코드
table = soup.find_all("table", {"class": "genre-table"})
for item in table:
for x in range(100):
try:
print(item.contents[x].find_all("h3"))
print(len(item.contents[x].find_all("h3")))
except:
pass
와 함께 사용할 수있는 뭔가 에 주요 장르 태그를 구문 분석 할 수 있었다
내 출력은 내가 t 때문에 이것을 이해이
[<h3><a href="http://www.imdb.com/genre/action/?ref_=gnr_mn_ac_mp">Action <span class="normal">»</span></a></h3>, <h3><a href="http://www.imdb.com/genre/adventure/?ref_=gnr_mn_ad_mp">Adventure <span class="normal">»</span></a></h3>]
2
처럼 두 개의 태그 목록의 11 개 세트입니다 그는 각 컨테이너에 두 개의 h3 태그가있는 "짝수"와 "홀수"의 클래스를 가지고 있지만 실제로는 짝수와 홀수를 구별하기 위해 지정하지 않았습니다. 실제로 여기에 내 자신의 질문에 대답하고 있다고 생각합니다. 그것은 컨테이너 클래스에 이상하거나 심지어 있었기 때문에 bs4가 그것을 구분하기 위해 그것을 보여주기 위해리스트에 넣었습니다.
두 번째로 더 중요한 질문 : 나는 내가 범위에서 y를 위해
을 시도했습니다df = pd.DataFrame(columns= ['Genre', 'Sub-Genre', 'Link'])
로 설정 한 내 dataframe에 각 H3 링크와 제목을 얻을 것입니다 방법
(2) :
df.append({'Genre':'item.contents[x].find_all("h3"))[y].text)}, ignore_index = true)
이것은 for 루프에 중첩되어 있으며 x는 물론)
그러나 그것은 작동하지 않습니다 어떤 생각? 갈마 당신의 길!
사람이 완벽 오른쪽 밖으로 저를 분류 할 때를 가서하지만 하나 개의 질문, 하하 이러한 기능 중 일부에 공부를 할 수있어 :
전체 코드가
일곱 번째로 썰기 어떻게 그것을 반복하고 있습니까? 약간 두 콜론에 의해 던져진 임 – entercaspa편집 그냥 네가 목록 (테이블) [요소 -가 - 여기] – entercaspa
@entercaspa 4 원소로 4 위치에 슬라이스 이해가 안 돼요 당신이 무슨 뜻인지 모르겠지만 목록 (table)은 테이블 요소의 목록을 반환하여 슬라이스 할 수 있습니다. 구문은 [시작 : 끝] 또는 [시작 : 끝 : 단계]와 같이 작동합니다.기본값은 0이고 기본값은 len (list)입니다. 따라서 [시작 :], [: 끝] 또는 [:]과 같이 둘 수 있습니다. 마지막 옵션 단계는 요소들과 여기 [1 : (end) : 2]를 건너 뛸 수있게합니다. 우리는 매 두 번째 요소를 건너 뜁니다. 구문 [:: 3]은 3 분마다 건너 뛴다. –