select_one 선택자 어떻게 해야할까요 도저히 모르겠네요
279
작성한 질문수 90
파이썬을 검색하고 f 12 눌렀을때
보이는 화면은 아래와 같습니다
도저히 어떻게 선택자(단어가 맞는지 모르겠네요)를
해야할까요?
저는 아래와 같이 한번 해봤습니다만
안되네요
여러가지로 많이 해봤는데도 안되서 문의드립니다.
title = l.select_one("div#res div#search div#rso div.hlcw0c div.tF2Cxc h3.LC20lb.DKV0Md").text

답변 1
0
구글 같은경우 생각보다 로직이 자주 변하는 사이트 중에 하나 입니다. 제가 확인해본바로 F12 를 눌러 개발자모드로 보는 내용과 실제 최초 브라우저가 다운로드 하는 데이터가 조금 다른 부분이 있습니다.
그리고 요청(requests.get()) 을 할때 헤더의 user-agent 가 어떠냐에 따라서도 내용이 달라지는 부분도 있는것 같습니다. 크롤링을 할때 실제 이런 여러가지 요소를 확인해봐야 합니다.
import requests
from bs4 import BeautifulSoup
url = "https://www.google.com/search?q=파이썬강좌&oq=파이썬강좌"
header = {"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36,gzip(gfe)"}
r = requests.get(url, headers=header)
bs = BeautifulSoup(r.text, "lxml")
# div.g 이하의 div 에서 class 명은 주기적으로 바뀌기 때문에 사용할 수 없고
# id 값은 자바스크립에 의해 렌더링 되는 걸로 판단되므로 사용할 수 없음
links = bs.select("div.g > div > div")
print("요소갯수 : ", len(links))
for l in links:
title = l.select_one("h3")
print(title, "\n=======\n")
위의 코드는 테스트용으로 확인해본 코드이니 참고하시면 될듯 합니다.
iis 접속후 자동으로 로그인 창이 나오도록 설정이 기능한가요?
0
62
2
리스트 이동 시 창 에러 발생
0
73
1
배포후 회원 등록 후 로그인 에러...
0
72
2
내부 서버 오류
0
65
2
app.config["MONGO_URI"] = "mongodb://localhost:27017/pm_db"
0
53
2
DB 검색하면 데이터가 없습니다. 라고 나와요. 5시간을 찾아봐도 모르겠어서 문의드려봅니다.
0
44
1
몽고db studio3T를 깔았는데
0
56
2
flake8과 linter
0
71
3
500이 뜹니다.
0
57
2
첨부파일 삭제
0
66
2
검색기능 질문
0
61
2
google.py
0
66
2
Studio 3T에 DB insert가 되지 않는 문제를 해결하지 못하고 있습니다 ㅠ
0
81
3
혹시 전체 코드 공개되어 있나요?
0
95
1
join.html 의 form 태그값 을 member_join() 에서 처리못함.
0
102
1
google.py 몽고db 샘플데이터 만들기
0
99
2
flake8 설치 이후 명령팔레트에서 linter가 안보입니다.
0
236
2
파이썬으로 만들어서 웹호스팅에 올릴경우
0
303
1
현재 구글검색 무한스크롤변경 문의합니다
0
295
1
몽고디비아틀라스로 추가 공부해서 올립니다.
0
216
1
IIS 500.19에러
0
652
2
버전 문제도 수정했는데 결과가 안나옵니다.
0
255
1
데이터베이스 저장관련 질문입니다.
0
266
1
test가 생기지 않습니다.
0
500
3





