일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 파이썬온라인수업
- 파이썬강의후기
- 패스트캠퍼스수강후기
- 파이썬독학
- 파이썬기초
- SQL
- 파이썬독학하기
- 광교카페
- 스크래핑
- 스위스기준금리
- 비전공자파이썬
- 비트코인
- 미국디리스킹
- swift문법
- 암호화폐
- 패스트캠퍼스후기
- 파이썬수업
- 파이썬강의
- 파이썬배우기
- 파이썬 인강
- 중국수출통제
- MBTI성격유형
- 파이썬인강
- 파이썬문법
- 순천여행
- 노르웨이기준금리
- MBTI
- 셀레니움
- MBTI성격검사
- 파이썬클래스
- Today
- Total
이제 데이터 공부 안하는 블로그
[패스트캠퍼스 수강 후기] 파이썬 인강 100% 환급 챌린지 16회차 미션 본문
15일차
오늘도 계속해서 스크래핑 과정입니다. 코드를 작성하고 그 코드를 점점더 완성도 있게 만들어 가고 있습니다. 뭔가 처음 시작할때 코드에 대한 큰 그림을 그려주고 강의를 시작했더라면 좋았을거 같다는 생각이 듭니다. 아쉽네요. 강사님 머리속에 들어있는 코드 그림을 전혀 모르는 상태에서 따라갈려니 쉽지 않습니다.
강사님이 기본 개념을 설명하는 부분에 좀더 시간과 노력을 할애 했으면 어떨까 하는 아쉬움도 있고요.
아무튼 오늘 강의 내용을 알아보도록하겠습니다.
어제는 css selector를 사용해서 네이버에있는 신문사의 링크를 가져오는 코드를 작성했었습니다.
이번에는 css selector 대신 xpth를 사용해서 링크를 가져오고 보기 좋게 출력까지 하는 코드를 작성합니다.
xpth가 뭔지는 구글링으로 알아보았습니다.
-xpath는 xml문서의 특정 부분의 위치를 찾을때 사용하는 언어입니다.
-xpath는 xml문서 안에 요소와 속성들을 탐색합니다.
-xpath는 200개 이상의 내장함수를 포함하고있습니다.
-xpath에서 속성을 지정하려면 @를 사용합니다.
-/ 는 문서의 계층 구조에서 최상위 노드 역할을 하는 가상 노드입니다.
이정도로 볼수있습니다. 강의에서는 설명하지않습니다. 이정도 되면 강의를 왜 듣는지 의심이 갑니다. 차라리 책보고 독학하는게 낫겠다 싶기도 합니다.
코드는 지난번에 리스트 형태에서 이번에는 딕셔너리 형태로 바꾸었습니다. 딕셔너리 형태로 바꾸면 파이썬 기본 문법에서 배웠듯이 key 와 value로 입출력이 가능합니다.
for a in root.xpath('//ul[@class="api_list"]/li[@class="api.item"]/a[@class=api_link"]'):
name, url = extract_contents(a) >>>>> 앞으로 정의할 함수를 사용해서 데이타를 가져옵니다.
# 딕셔너리 삽입
urls[name] = url
return urls
이제 신문사의 이름과 링크를 가져올 함수를 정의해 줍니다
def extract_contents(dom):
# 링크 주소
ling = dom.get("href")
# 신문사 명
name = dom.xpath('./img')[0].get('alt') # xpath('./img')
return name, link
위에 for 반복문 코드에서 xpath를 쓰는법이 나와있습니다.
xpath('//ul[@class="api_list"]/li[@class="api.item"]/a[@class=api_link"]'):
//는 최상위를 뜻하고 ul태그에서 class="api_list”, 그 아래 li태그에서 class="api.item, 그아래 a태그에서 class=api_link 가져오는 형태입니다. 강사님은 css selector의 형태보다 xpath가 더 쓰기 쉽고 편해서 이방법을 더 많이 쓴다고 하시네요.
솔직히 이 코드를 보고 글을 쓰면서 강의를 이런식으로 진행하는게 맞나 하는 의문이 듭니다. 함수를 먼저 코드에 사용하고 그 함수를 뒤에 정의 하는것은 내가 코더로 프로그램을 짜는데는 맞는지 몰라도 학생을 가르치는 코드로는 부적절합니다. 파이썬에서 특히 크롤링 부분을 배우고 싶은 사람에게는 이 강의를 추천하지 않습니다.
그럼 오늘은 여기까지 하고 앞으로 크롤링 강의를 계속 들을지 아니면 다른 부분으로 넘어갈지 고민해 보겠습니다.
강의소개 https://bit.ly/33a7nvc
'파이썬' 카테고리의 다른 글
[패스트캠퍼스 수강 후기] 파이썬 인강 100% 환급 챌린지 18회차 미션 (0) | 2020.11.19 |
---|---|
[패스트캠퍼스 수강 후기] 파이썬 인강 100% 환급 챌린지 17회차 미션 (0) | 2020.11.18 |
[패스트캠퍼스 수강 후기] 파이썬 인강 100% 환급 챌린지 15회차 미션 (0) | 2020.11.16 |
[패스트캠퍼스 수강 후기] 파이썬 인강 100% 환급 챌린지 14회차 미션 (0) | 2020.11.15 |
[패스트캠퍼스 수강 후기] 파이썬 인강 100% 환급 챌린지 13회차 미션 (0) | 2020.11.14 |