250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- mro()
- CSS
- remove()
- shuffle()
- shutil
- MySqlDB
- node.js
- fileinput
- __sub__
- decode()
- zipfile
- count()
- HTML
- JS
- fnmatch
- Database
- glob
- discard()
- 파이썬
- inplace()
- View
- __annotations__
- choice()
- locals()
- randrange()
- items()
- 오버라이딩
- __getitem__
- MySQL
- __len__
Archives
- Today
- Total
흰둥이는 코드를 짤 때 짖어 (왈!왈!왈!왈!왈!왈!왈!왈!왈!왈!왈!)
(Python) 셀레니옴 본문
728x90
반응형
1. 셀레니움(Selenium)
- 셀레니움은 브라우저를 컨트롤 할 수 있도록 지원하는 라이브러리
In [1]:
!pip install selenium
Collecting selenium
Downloading selenium-4.9.1-py3-none-any.whl (6.6 MB)
Collecting urllib3[socks]<3,>=1.26
Downloading urllib3-2.0.2-py3-none-any.whl (123 kB)
Collecting certifi>=2021.10.8
Downloading certifi-2023.5.7-py3-none-any.whl (156 kB)
Collecting trio-websocket~=0.9
Downloading trio_websocket-0.10.2-py3-none-any.whl (17 kB)
Collecting trio~=0.17
Downloading trio-0.22.0-py3-none-any.whl (384 kB)
Collecting pysocks!=1.5.7,<2.0,>=1.5.6; extra == "socks"
Downloading PySocks-1.7.1-py3-none-any.whl (16 kB)
Collecting wsproto>=0.14
Downloading wsproto-1.2.0-py3-none-any.whl (24 kB)
Collecting exceptiongroup
Downloading exceptiongroup-1.1.1-py3-none-any.whl (14 kB)
Requirement already satisfied: cffi>=1.14; os_name == "nt" and implementation_name != "pypy" in c:\users\acer\appdata\local\programs\python\python38\lib\site-packages (from trio~=0.17->selenium) (1.15.1)
Requirement already satisfied: idna in c:\users\acer\appdata\local\programs\python\python38\lib\site-packages (from trio~=0.17->selenium) (3.4)
Collecting async-generator>=1.9
Downloading async_generator-1.10-py3-none-any.whl (18 kB)
Collecting sortedcontainers
Downloading sortedcontainers-2.4.0-py2.py3-none-any.whl (29 kB)
Requirement already satisfied: attrs>=19.2.0 in c:\users\acer\appdata\local\programs\python\python38\lib\site-packages (from trio~=0.17->selenium) (22.2.0)
Collecting outcome
Downloading outcome-1.2.0-py2.py3-none-any.whl (9.7 kB)
Requirement already satisfied: sniffio in c:\users\acer\appdata\local\programs\python\python38\lib\site-packages (from trio~=0.17->selenium) (1.3.0)
Collecting h11<1,>=0.9.0
Downloading h11-0.14.0-py3-none-any.whl (58 kB)
Requirement already satisfied: pycparser in c:\users\acer\appdata\local\programs\python\python38\lib\site-packages (from cffi>=1.14; os_name == "nt" and implementation_name != "pypy"->trio~=0.17->selenium) (2.21)
Installing collected packages: pysocks, urllib3, certifi, h11, wsproto, exceptiongroup, async-generator, sortedcontainers, outcome, trio, trio-websocket, selenium
Successfully installed async-generator-1.10 certifi-2023.5.7 exceptiongroup-1.1.1 h11-0.14.0 outcome-1.2.0 pysocks-1.7.1 selenium-4.9.1 sortedcontainers-2.4.0 trio-0.22.0 trio-websocket-0.10.2 urllib3-2.0.2 wsproto-1.2.0
WARNING: You are using pip version 20.2.1; however, version 23.1.2 is available.
You should consider upgrading via the 'c:\users\acer\appdata\local\programs\python\python38\python.exe -m pip install --upgrade pip' command.
In [2]:
!pip install chromedriver_autoinstaller
Collecting chromedriver_autoinstaller
Downloading chromedriver_autoinstaller-0.4.0-py3-none-any.whl (6.5 kB)
Installing collected packages: chromedriver-autoinstaller
Successfully installed chromedriver-autoinstaller-0.4.0
WARNING: You are using pip version 20.2.1; however, version 23.1.2 is available.
You should consider upgrading via the 'c:\users\acer\appdata\local\programs\python\python38\python.exe -m pip install --upgrade pip' command.
In [8]:
from selenium import webdriver
from selenium.webdriver import Keys
In [4]:
driver = webdriver.Chrome()
In [6]:
driver.get('https://www.google.com/')
In [7]:
search = driver.find_element('name', 'q')
In [9]:
search.send_keys('날씨')
In [10]:
search.send_keys(Keys.RETURN)
In [12]:
from bs4 import BeautifulSoup
In [11]:
driver = webdriver.Chrome()
driver.get('https://comic.naver.com/webtoon/detail?titleId=725586&no=138')
In [13]:
soup = BeautifulSoup(driver.page_source)
In [15]:
comment_area = soup.findAll('span',{'class':'u_cbox_contents'})
print(comment_area)
[<span class="u_cbox_contents" data-lang="ko" style="">라는 미래를 수호가 보고 미리 귀띔해줬다는 내용이죠?</span>, <span class="u_cbox_contents" data-lang="ko" style="">작가님 다시 생각해보세요 이건 아니잖어</span>, <span class="u_cbox_contents" data-lang="ko" style="">이거 미래 예지중인거죠? 그런거여야 할꺼에요</span>, <span class="u_cbox_contents" data-lang="ko" style="">소방관 대회 나간다고 했던 사람른 얼마나 죄책감 들까.. 방금 전까지만 해도 자기 쉬라고 대타 뛰어준다고 했던 형이 갑자기 죽었대.. 자기 대타 시간에...</span>, <span class="u_cbox_contents" data-lang="ko" style="">다들 아닐거라 하시는데 오히려 이런 장면이 소방관의 현실을 더 잘 보여주는듯 해서 씁쓸하네요..</span>, <span class="u_cbox_contents" data-lang="ko" style="">대사 없이 전율 돋았다 진짜...</span>, <span class="u_cbox_contents" data-lang="ko" style="">제목 보면 전야(3)이라고 나오는데 끝이 아니라고봅니다
아마도 호수가 너무 먼 미래를 봤다고 예상합니다...
그게 아니라면 원호야 좋은 곳으로 가길 바랄게...</span>, <span class="u_cbox_contents" data-lang="ko" style="">아아... 왜 썸네일에 원호만 옷이랑 얼굴에 검댕이 없고 혼자 뒤쪽보고 있냐고 계속 댓글 써도 싫어요만 먹고 묻혔었는데......역시 복선이였나요ㅜㅠㅜㅠㅠ</span>, <span class="u_cbox_contents" data-lang="ko" style="">색채가 평소보다 옅다.. 그말은 미래보는중이라는것이 아닐까ㅠㅠ 이건아니야..</span>, <span class="u_cbox_contents" data-lang="ko" style="">여백색깔이 흰색이네요... 싸한데 이럼...과거, 회상, 미래 컷일때는 여백이 검정이어야하는데...
흰색은 현실인데...
오류이길... 이 작품에서도 작가님이 구별해서 색 넣습니다 예전꺼 초창기 소방학교때 화 보면 미래시 일때 검은색이었습니다.ㅠ
</span>, <span class="u_cbox_contents" data-lang="ko" style="">와 웹툰 썸네일에 원호만 옷이랑 얼굴이 깨끗한 이유가 이거였구나....</span>, <span class="u_cbox_contents" data-lang="ko" style="">내가 이렇게까지 과몰입한적이 없는데, 원호를 최애라고 생각해본적도 없는데 왜이렇게 믿기 싫고 눈물이 나는지. 당연히 호수 옆을 지키고 동고동락하며 영원할줄 알았던 캐릭터가 이렇게 떠난다는게 실감이 안나서 그런가. 내가 생각보다 이 웹툰에 정이 많이 들었구나... 과몰입인거 아는데 왜이렇게 속상한지</span>, <span class="u_cbox_contents" data-lang="ko" style="">다들 웹툰 끝까지 내리고 바로 댓글 오지말고 띡띡거리는 기계소리 끝까지 들어보세요... 아마 이거 끝까지 들은사람 많이 없을거같은데... </span>, <span class="u_cbox_contents" data-lang="ko" style="">솔직히 미리보기 썸네일 보고 누가 죽나 싶어서 당황했는데우리 아가말랑이가 죽을줄은 몰랐어 진짜...우리 아가말랑이 진짜
착하게 살았는데 성실하게 살았는데...여러분 우리 아가말랑이 소방학교때 모습좀 보세요 호수 미래보는거 알고 아가말랑이가 도와주는데 애기가 볼빵빵하면서 윙크하는거 있거든요...?그거 보면 기절해요...그렇게 해맑게 웃던 아기말랑이가 장례식장 사진에
걸려있는것을 보면 아직도 가슴이 미어집니다</span>, <span class="u_cbox_contents" data-lang="ko" style="">친구를 잃은 호수의 심정이 공감되어 괴롭네요마침 오늘이 친구의 기일입니다
자전거 사고로 1달여 간 혼수상태에 있었지만 젊은 나이었기에 훌훌 털고 일어나리라 믿었던 친구...
그러나 끝내 깨어나지 못하고 세상을 떴다는 비보를 들은 게 벌써 3년 전이네요
장례식장에 들어가서도 믿기지 않았습니다
늘 그랬듯 밝은 모습으로 다시 나타날 것 같았는데..
영원히 볼 수 없다는 걸 깨달았을 때 눈물이 한참 났습니다.
이제는 시간이 꽤 흘러 기억 속에서 잊혀지고 있다는 사실이 새삼 슬픈 날입니다.
그 후로 저는 죽음이 생각보다 가까이 있다는 걸 깨달았습니다
살아있는 지금 이 순간을 행복하게 살고, 제 곁에 소중한 사람들이 있을 때 잘해야겠다는 생각을 다시금 하게 됩니다</span>]
In [16]:
print('********** 베스트 댓글 **********')
for i in range(len(comment_area)):
comment = comment_area[i].text.strip()
print(comment)
print('-' * 30)
********** 베스트 댓글 **********
라는 미래를 수호가 보고 미리 귀띔해줬다는 내용이죠?
------------------------------
작가님 다시 생각해보세요 이건 아니잖어
------------------------------
이거 미래 예지중인거죠? 그런거여야 할꺼에요
------------------------------
소방관 대회 나간다고 했던 사람른 얼마나 죄책감 들까.. 방금 전까지만 해도 자기 쉬라고 대타 뛰어준다고 했던 형이 갑자기 죽었대.. 자기 대타 시간에...
------------------------------
다들 아닐거라 하시는데 오히려 이런 장면이 소방관의 현실을 더 잘 보여주는듯 해서 씁쓸하네요..
------------------------------
대사 없이 전율 돋았다 진짜...
------------------------------
제목 보면 전야(3)이라고 나오는데 끝이 아니라고봅니다
아마도 호수가 너무 먼 미래를 봤다고 예상합니다...
그게 아니라면 원호야 좋은 곳으로 가길 바랄게...
------------------------------
아아... 왜 썸네일에 원호만 옷이랑 얼굴에 검댕이 없고 혼자 뒤쪽보고 있냐고 계속 댓글 써도 싫어요만 먹고 묻혔었는데......역시 복선이였나요ㅜㅠㅜㅠㅠ
------------------------------
색채가 평소보다 옅다.. 그말은 미래보는중이라는것이 아닐까ㅠㅠ 이건아니야..
------------------------------
여백색깔이 흰색이네요... 싸한데 이럼...과거, 회상, 미래 컷일때는 여백이 검정이어야하는데...
흰색은 현실인데...
오류이길... 이 작품에서도 작가님이 구별해서 색 넣습니다 예전꺼 초창기 소방학교때 화 보면 미래시 일때 검은색이었습니다.ㅠ
------------------------------
와 웹툰 썸네일에 원호만 옷이랑 얼굴이 깨끗한 이유가 이거였구나....
------------------------------
내가 이렇게까지 과몰입한적이 없는데, 원호를 최애라고 생각해본적도 없는데 왜이렇게 믿기 싫고 눈물이 나는지. 당연히 호수 옆을 지키고 동고동락하며 영원할줄 알았던 캐릭터가 이렇게 떠난다는게 실감이 안나서 그런가. 내가 생각보다 이 웹툰에 정이 많이 들었구나... 과몰입인거 아는데 왜이렇게 속상한지
------------------------------
다들 웹툰 끝까지 내리고 바로 댓글 오지말고 띡띡거리는 기계소리 끝까지 들어보세요... 아마 이거 끝까지 들은사람 많이 없을거같은데...
------------------------------
솔직히 미리보기 썸네일 보고 누가 죽나 싶어서 당황했는데우리 아가말랑이가 죽을줄은 몰랐어 진짜...우리 아가말랑이 진짜
착하게 살았는데 성실하게 살았는데...여러분 우리 아가말랑이 소방학교때 모습좀 보세요 호수 미래보는거 알고 아가말랑이가 도와주는데 애기가 볼빵빵하면서 윙크하는거 있거든요...?그거 보면 기절해요...그렇게 해맑게 웃던 아기말랑이가 장례식장 사진에
걸려있는것을 보면 아직도 가슴이 미어집니다
------------------------------
친구를 잃은 호수의 심정이 공감되어 괴롭네요마침 오늘이 친구의 기일입니다
자전거 사고로 1달여 간 혼수상태에 있었지만 젊은 나이었기에 훌훌 털고 일어나리라 믿었던 친구...
그러나 끝내 깨어나지 못하고 세상을 떴다는 비보를 들은 게 벌써 3년 전이네요
장례식장에 들어가서도 믿기지 않았습니다
늘 그랬듯 밝은 모습으로 다시 나타날 것 같았는데..
영원히 볼 수 없다는 걸 깨달았을 때 눈물이 한참 났습니다.
이제는 시간이 꽤 흘러 기억 속에서 잊혀지고 있다는 사실이 새삼 슬픈 날입니다.
그 후로 저는 죽음이 생각보다 가까이 있다는 걸 깨달았습니다
살아있는 지금 이 순간을 행복하게 살고, 제 곁에 소중한 사람들이 있을 때 잘해야겠다는 생각을 다시금 하게 됩니다
------------------------------
- XPath: 기존의 컴푸터 파일 시스템에서 사용하는 경로 ㅍ표현식과 유사한 XML의 경로 언어
- /html/body/div[1]/div[5]/div/div/div[4]/div[1]/div[3]/div/div/div[8]/a/span[1]
In [17]:
# 전체 댓글 보기 버튼 클릭하기
driver.find_element('xpath', '/html/body/div[1]/div[5]/div/div/div[4]/div[1]/div[3]/div/div/div[8]/a/span[1]').click()
In [18]:
soup = BeautifulSoup(driver.page_source)
comment_area = soup.findAll('span',{'class':'u_cbox_contents'})
print(comment_area)
[<span class="u_cbox_contents" data-lang="ko" style="">플레그를 너무 세웠어...</span>, <span class="u_cbox_contents" data-lang="ko" style="">중환자실 앞에 사람들 말소리 브금듣고 미치는 줄 알았어요</span>, <span class="u_cbox_contents" data-lang="ko" style="">진짜 내용을 알고 봐도봐도 눈물이 난다.. 대타만 하지않았더라도 비만 오지않았더라도.. 마지막에 찬밥먹은게 계속 생각나네.. 원호야ㅠㅠ</span>, <span class="u_cbox_contents" data-lang="ko" style="">몇번을 다시 봐도 정말 가슴 아픈화다 이 때의 앞뒤로 원호에 대한 모든 내용이 아련하고 슬플만큼</span>, <span class="u_cbox_contents" data-lang="ko" style="">아.... 거짓말 ㅋ</span>, <span class="u_cbox_contents" data-lang="ko" style="">진짜야..? 이거 지금 진짜야...?</span>, <span class="u_cbox_contents" data-lang="ko" style="">안돼ㅠㅠ아니죠? 다시 미래보고 살려낼거죠? 네네?ㅠㅠ </span>, <span class="u_cbox_contents" data-lang="ko" style="">아니구라야 구라ㅜㅠ제발</span>, <span class="u_cbox_contents" data-lang="ko" style="">아니야..진짜..
몇번을 다시 정주행하지만..
항상 아니길 바랬는데...</span>, <span class="u_cbox_contents" data-lang="ko" style="">아무런 대화없이 이런 긴장을 만들어 내다니... 3번을 보고 대사가 없다는걸 알았다</span>, <span class="u_cbox_contents" data-lang="ko" style="">아니야 그럴리가 없잖아.. 원호야..</span>, <span class="u_cbox_contents" data-lang="ko" style="">에이 이러지마요</span>, <span class="u_cbox_contents" data-lang="ko" style="">ㅡㅡ개뜬금포네</span>, <span class="u_cbox_contents" data-lang="ko" style="">원호랑 호수랑 비슷하게 생겨서 뭐지 하고 2회차 계속 돌려봄</span>, <span class="u_cbox_contents" data-lang="ko" style="">아니 ;;;;;;;</span>]
In [19]:
print('********** 전체 댓글 **********')
for i in range(len(comment_area)):
comment = comment_area[i].text.strip()
print(comment)
print('-' * 30)
********** 전체 댓글 **********
플레그를 너무 세웠어...
------------------------------
중환자실 앞에 사람들 말소리 브금듣고 미치는 줄 알았어요
------------------------------
진짜 내용을 알고 봐도봐도 눈물이 난다.. 대타만 하지않았더라도 비만 오지않았더라도.. 마지막에 찬밥먹은게 계속 생각나네.. 원호야ㅠㅠ
------------------------------
몇번을 다시 봐도 정말 가슴 아픈화다 이 때의 앞뒤로 원호에 대한 모든 내용이 아련하고 슬플만큼
------------------------------
아.... 거짓말 ㅋ
------------------------------
진짜야..? 이거 지금 진짜야...?
------------------------------
안돼ㅠㅠ아니죠? 다시 미래보고 살려낼거죠? 네네?ㅠㅠ
------------------------------
아니구라야 구라ㅜㅠ제발
------------------------------
아니야..진짜..
몇번을 다시 정주행하지만..
항상 아니길 바랬는데...
------------------------------
아무런 대화없이 이런 긴장을 만들어 내다니... 3번을 보고 대사가 없다는걸 알았다
------------------------------
아니야 그럴리가 없잖아.. 원호야..
------------------------------
에이 이러지마요
------------------------------
ㅡㅡ개뜬금포네
------------------------------
원호랑 호수랑 비슷하게 생겨서 뭐지 하고 2회차 계속 돌려봄
------------------------------
아니 ;;;;;;;
------------------------------
728x90
반응형
'파이썬 크롤링' 카테고리의 다른 글
(Python) 픽사베이 이미지 크롤링 (0) | 2023.06.09 |
---|---|
(Python) 인스타그램 크롤링 (0) | 2023.06.09 |
(Python) 크롤링 (0) | 2023.06.09 |
Comments