requests 관련 질문
136
21 asked
25년 5월 시점에서 하다보니깐, requests 강의를 들을때 클래스 파싱 하는 과정이 작동이 안되서 확인해보니, requests는 javascript 로 만들어진 동적 내용을 긁을 수 없다고 하더라구요.
그래서 selenium의 webdriver를 사용했는데, 작동은 되는데 불편한 점이 각 실행시마다 크롬 창이 떠요.
혹시 javascript도 requests로 파싱할 수 있는 방법 이 있을까요?
Answer 2
0
셀레니움을 사용하지않고,
requests 만으로 크롤링 하는 여러 방법들이 있는데
심화편 강의에 포함되어 있어서 공개적으로 알려드릴 수는 없는 내용입니다.
https://cafe.naver.com/startcodingofficial/2017
0
안녕하세요, 인프런 AI 인턴입니다. 최다니엘님.
requests 라이브러리는 HTTP 요청을 통해 서버로부터 응답을 받아오는 방법이기 때문에, JavaScript로 동적으로 생성되는 콘텐츠를 직접적으로 처리할 수 없습니다. 그래서 JavaScript를 이용해 페이지를 로딩하는 사이트의 경우, selenium과 같은 브라우저 자동화 도구가 필요합니다.
하지만 selenium 실행 시 크롬 창이 떠서 불편하게 느끼시다면, ‘헤드리스 모드’를 사용할 수 있습니다. 헤드리스 모드는 실제 브라우저 창을 띄우지 않고 백그라운드에서 브라우저 작업을 수행할 수 있게 해줍니다. 아래는 헤드리스 모드를 사용하는 방법의 예시입니다:
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
from webdriver_manager.chrome import ChromeDriverManager
chrome_options = Options()
chrome_options.add_argument("--headless") # 헤드리스 모드 설정
chrome_options.add_argument("--no-sandbox")
chrome_options.add_argument("--disable-dev-shm-usage")
service = Service(ChromeDriverManager().install())
driver = webdriver.Chrome(service=service, options=chrome_options)
driver.get('https://example.com')
# 페이지 파싱 로직 추가
driver.quit()
위 코드를 사용하면 크롬 창이 뜨지 않고 백그라운드에서 작업을 수행할 수 있습니다.
JavaScript를 직접 requests로 파싱하려면 HTML을 서버로부터 받아오기 전에 실행된 JavaScript를 포함하여 실제로 렌더링된 HTML을 가져올 수 있어야 하는데, 이는 브라우저 환경을 통해서만 가능하기 때문에 결국 selenium을 이용하는 것이 좋습니다.
질문에 대한 답변이 도움이 되었길 바라며, 추가적으로 궁금한 점이 있으시면 언제든지 질문해 주세요!
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
Live server 를 이용 해보고 싶은데 확장메뉴 설치가 막혀 있어요
0
62
2
'팀 단위 AI 업무 혁신' 자문 관련하여 문의드리고자 합니다. (연락처 요청)
0
38
1
import requests from bs4 import BeatifulSoup 이 단계에서 안 되네요
0
76
2
설치 관련
0
130
2
vs code 결과출력이 안됩니다
0
143
1
크롤링 관련 질문입니다
0
209
2
word wrap 체크 후에도 콘솔 한줄로 출력되는현상
0
190
1
주피터에서 pip오류가 계속납니다
0
1084
3
강의 "requests, Beautifulsoup4 사용법 빠르게 알아보기"에서 질문이있습니다.
0
170
2
네이버쇼핑 검색창 넘어가기전 팝업창이 안사라져요
0
364
1
html주소를 다른 컴터에서도 접속하기
0
241
2
pandas 설치하는데 오류가 나서요
0
2704
1
실행오류
0
213
1
네이버쇼핑 무한스크롤 안되시는분들 모바일네이버로 실습해보세요
0
263
1
뉴스 페이지에 페이지 번호가 없는데 어떻게 가져오나요?
0
231
2
네이버 쇼핑에 팝업창이 뜨기 시작했어요 도와주세요 ㅠㅠ
0
719
3
셀레니움 실습 시 창이 자동 차단되면서 꺼집니다.
0
663
2
낮은 가격순을 클릭하는 문을 추가하고싶습니다.
0
303
2
pip는 내부 또는 외부명령 ,실행할 수 있는 프로그램
0
3387
2
이런오류는 어떤 오류인가요
0
658
1
창이 두개떠요/쇼핑검색도 안되요 ㅜ
0
333
2
약간 변태(?)같지만 해당 코드를 깔끔하게 함수로 리팩토링해보았습니다
0
338
2
과제 답안을 보지않고 스스로 구글링해서 만든 웹 크롤링 프로그램(10페이지 단위) 코드입니다.
0
757
2
자동 로그인시 자동입력방지문자 페이지로 연결
0
2277
3

