- 네이버 뉴스스탠드 크롤링
- html내용 가져올때 copy selector 사용 피하기
# lxml 사용 기초 스크랩핑(1)
import requests
import lxml.html
def main():
"""
네이버 메인 뉴스 스탠드 스크랩핑 메인 함수
"""
# 세션 사용 권장
# session = requests.Session()
# session.get('https://www.naver.com/')
# 스크랩핑 대상 URL
response = requests.get('https://www.naver.com/')
# 신문사 링크 리스트 획득
urls = scrape_news_list_page(response)
# 결과 출력
for url in urls:
print(url)
def scrape_news_list_page(response):
# URL 리스트 선언
urls = []
# 태그 정보 문자열 저장
root = lxml.html.fromstring(response.content)
# 문서내 경로 절대 경로 변환
# root.make_links_absolute(response.url)
# copy>selector를 사용하면 고유명사가 있기때문에 범용적으로 사용할 수 없음.
for a in root.cssselect('.api_list .api_item a.api_link'):
# 링크
url = a.get('href') # href태그의 정보들을 가져올 것이다.
# 리스트 삽입
urls.append(url)
return urls
# 스크랩핑 시작
if __name__ == '__main__':
main()
'전공 과목 이수1👨💻 > 파이썬' 카테고리의 다른 글
스크랩핑- 네이버 날씨 / 뉴스 헤더라인 (0) | 2021.12.04 |
---|---|
vscode - json파일 생성하고 설정 (0) | 2021.12.03 |
크롤링 - 유튜브 5시간짜리 보고 정리 (0) | 2021.12.03 |
크롤링 공부 - urllib, urlopen (0) | 2021.12.02 |
정렬알고리즘 구현하기 (0) | 2021.06.23 |
파이썬 - 함수 생성 예제 세개 (0) | 2020.12.03 |