네이버블로그 친구 공감 클릭 - 셀레늄
셀레늄 - 공감 클릭하기
이번에는 네이버 로그인을 성공한 이후
블로그로 이동하여
블로그 친구들의 게시글에 좋아요를 클릭을 해보겠습니다.
공감부분을 엘리먼트를 확인합니다.
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
driver = webdriver.Chrome(ChromeDriverManager().install())
driver.implicitly_wait(10) #10초대기 설정
driver.get("https://www.naver.com")
from selenium.webdriver.common.by import By
driver.find_element(By.CLASS_NAME,'link_login').click()
user = {'id':'아이디넣는곳','pw':'비밀번호넣는곳'}
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.keys import Keys
import pyperclip
driver.find_element(By.ID,'id').click()
pyperclip.copy(user['id'])
ActionChains(driver).key_down(Keys.CONTROL).send_keys('v').key_up(Keys.CONTROL).perform()
driver.find_element(By.ID,'pw').click()
pyperclip.copy(user['pw'])
ActionChains(driver).key_down(Keys.CONTROL).send_keys('v').key_up(Keys.CONTROL).perform()
driver.find_element(By.CLASS_NAME, 'btn_global').click()
#네이버 블로그로 이동 후 공감클릭 시작
driver.find_element(By.LINK_TEXT,'블로그').click()
import re
like_list = driver.find_elements(By.CLASS_NAME, 'u_likeit_list_btn._button.off')
for like in like_list:
print(like.text)
like_cnt = re.findall("\d+",like.text)
if like_cnt and int(like_cnt[0]) < 2:
continue
else:
like.click()
break
time.sleep(1)
1.find_elements 로 공감을 클릭하지 않은 엘리먼트만 list 형태로 가져옵니다.
※find_elements 는 복수개의 엘리먼트를 가져올때 사용합니다.
2.like.text 변수를 찍어보면 - 공감해요 10- 이런식으로 출력되는것을 확인할 수 있습니다.
3.re함수를 이용해 숫자만 like_cnt로 가져옵니다.
4.like_cnt 를 int로 캐스팅 해고 공감수가 2보다 적으면 공감을 클릭하지 않는다.
※ 글을 보지 않고 공감을 누르는것이기 때문에 주인장이 찾와서 글도 안보고 공감누르지 말라고 머라하는분이 계십니다...
공감 클릭하는 부분을 무한루프 돌리면
친구들의 글에 항상 공감을 클릭해줄 수 있겠죠?^^;
※ 셀레늄 및 웹드라이버 매니저 설치
※ find element 사용하기
※ find element By사용하기
TAG: #naver #blog #heart #공감클릭 #selenium # #find_elements
Comments
Login:
j**angbbang@naver.com 2024.01.05 16:38:45
로그인 하고 블로그까지는 이동했는데 공감해요를 전혀 못찾습니다. 현재 페이지 기준으로 어떻게 바꾸면 될까요