일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- get
- json
- github
- requests
- portfolio
- NAS
- CSS
- javascript
- CRUD
- frontend
- Algorithm
- openapi
- mysql
- flask
- backend
- pymongo
- PYTHON
- fetch
- venv
- Crawling
- Project
- POST
- flaskframework
- OOP
- body
- atlas
- beautifulsoup
- mongodb
- synology
- java
Archives
- Today
- Total
wisePocket
[Python] 파이썬 크롤링 with BeautifulSoup(bs4) - 2 본문
Python&Flask Tutorials, AWS EB/3rd WEEK Python, Crawling, MongoDB
[Python] 파이썬 크롤링 with BeautifulSoup(bs4) - 2
ohnyong 2023. 7. 4. 23:56History
venv로 파이썬을 연습하고 있는 폴더의 가상 환경 구축을 완료
requests 라이브러리를 사용
BeautifulSoup 라이브러리 설치 및 사용
영화 예매 순위 사이트에서 제목 가져오기 크롤링 연습 완료
Title 말고 다른 요소들도 가져와보자
1. 예매 순위
예매 순위는 rank_num이란 클래스를 사용하고 있다.
제목을 뽑아낼때랑 같다. rank변수에 넣고 print로 뽑아낸다.
# 리스트 중에 반복문으로
# li 코드 내용 중에 클래스가 a class="link_txt"로 되어있는 태그부분만 가져오자
for li in titles:
rank = li.select_one('.rank_num').text
title = li.select_one('.link_txt').text
# print(title)
#그 중에 텍스트만 가져오자 -> 위 변수에서 .text로 추출하는 것으로 변경함
print(rank, title)
2. 평점
평점까지 추가해보자. html을 살펴보니 li안에 있는 span중에 txt_grade 클래스를 사용하는 부분이 있다. 가져오면 된다.
for li in titles:
rank = li.select_one('.rank_num').text
title = li.select_one('.link_txt').text.strip()
rate = li.select_one('.txt_grade').text.replace(',','')
#혹시 텍스트가 내가 원하는 형태가 아닐 경우 가공을 할 수 있다.
#.strip() 을 붙이면 띄워쓰기를 없에줌
#.replace(',', '') ,와 공백을 없에줌
# print(title)
#그 중에 텍스트만 가져오자 -> 위 변수에서 .text로 추출하는 것으로 변경함
print(rank, title, rate)
3. 텍스트 재가공
혹시 텍스트가 내가 원하는 형태가 아닐 경우 가공을 할 수 있다.
text.strip() : 띄워쓰기를 없에줌
text.replace(',', '') : ,와 공백을 없에줌
해당 스터디는 아래 깃을 통해 업데이트 되고 있습니다.
https://github.com/yzpocket/Sparta99training
GitHub - yzpocket/Sparta99training
Contribute to yzpocket/Sparta99training development by creating an account on GitHub.
github.com
'Python&Flask Tutorials, AWS EB > 3rd WEEK Python, Crawling, MongoDB' 카테고리의 다른 글
[Python][Database] MongoDB Atlas(Cloud)와 Python 연결 dnspython , pymongo 라이브러리 + SSL: CERTIFICATE_VERIFY_FAILED 에러 해결 (0) | 2023.07.05 |
---|---|
[Database] DB 간단 개념 및 MongoDB Atlas 설정 (0) | 2023.07.05 |
[Python] 파이썬 크롤링 with BeautifulSoup(bs4) - 1 (0) | 2023.07.04 |
[Python] 파이썬 라이브러리 첫 사용 'requests' (0) | 2023.07.04 |
[Python] 가상환경 venv의 필요성 (0) | 2023.07.04 |