커뮤니티
포인트
쿠폰
내 강의실
국비 신청 내역
증명서
계정
로그아웃
학습 질문
개발 일지
나의 활동
답변 완료
명령어 오류입니다. 살려주세요ㅠㅠ
[왕초보] 칼퇴를 부르는 파이썬 업무 자동화 v0
4주차
북마크
박*연
댓글
1
추천
0
조회수
9
조회수
9
답변 완료

* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.

* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.





스파르타 즉문즉답

살려주세요ㅠㅠ




작성한 코드 및 에러 메세지

from selenium import webdriver

from selenium.webdriver.common.by import By

from selenium.webdriver.common.keys import Keys

from selenium.webdriver.chrome.options import Options

import time

from smtplib import SMTP_SSL

from email.message import EmailMessage

from email.mime.multipart import MIMEMultipart

from email.mime.text import MIMEText


chrome_options = Options()

chrome_options.add_experimental_option("detach", True)

chrome_options.add_experimental_option("excludeSwitches", ["enable-logging"])

driver = webdriver.Chrome(options=chrome_options)


# 웹 사이트 열기

driver.get('https://news.google.com')

time.sleep(1)


driver.maximize_window()

time.sleep(2)


SEARCH_KEYWORD = '전기자동차'


search_bar = driver.find_element(By.CSS_SELECTOR,'검색창 키워드 명')

search_bar.click()

search_bar.send_keys(SEARCH_KEYWORD)

search_bar.send_keys(Keys.ENTER)


time.sleep(4)


before_h = driver.execute_script("return window.scrollY")

while True:

    driver.find_element(By.CSS_SELECTOR, "body").send_keys(Keys.END)

    time.sleep(1)

    after_h = driver.execute_script("return window.scrollY")

    if after_h == before_h:

        break

    before_h = after_h


data_list = []


article_list = driver.find_elements(By.CSS_SELECTOR, '')


for article in article_list:

    title = article.text

    link = article.get_attribute('href')


    data_dict = {'title': title, 'link': link}

    data_list.append(data_dict)

    print(title)


print(data_list)

# Ax4B8 ZAGvjd 검색창 가져올 때 사용할 class를 파악

# JtKRv 뉴스 목록 들고올 때 사용할 class 파악



# 이메일 메시지 설정

msg = MIMEMultipart()

msg['Subject'] = f'오늘의 {SEARCH_KEYWORD} 뉴스'

msg['From'] = '보내는 이메일'

msg['To'] = '받을 이메일'

msg.set_content('This is a test email.')


# 이메일 본문 작성

Email_body = ""

Email_body += "<br>"

Email_body += "<h2>오늘의 {SEARCH_KEYWORD} 뉴스<./h2>"

Email_body += "<br>"

Email_body += "<div><img src='https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTtTYaJdFDVJkRiFeZ21BeqpItAwXzUwDb4intgyXFlX-dpKHRQd08413jxMGyJcZtnc5U&usqp=CAU'></div>"


for i in range(len(data_list)):

    title = data_list[i]['title']

    link = data_list[i]['link']


    Email_body += f"<p><a href='{link}'>{title}</a></p>\"

   


msg.attach(MIMEMultipart(Email_body, "html"))


# SMTP 설정 및 이메일 전송

with SMTP_SSL('smtp.gmail.com', 465) as smtp:

    smtp.login('본인 아이디', '본인 비밀번호')

    smtp.send_message(msg)


print("성공!")

driver.quit()




취소
 공유
취소
댓글 0
댓글 알림
나의얼굴