Skip to content
조회 수 2043 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

파이썬 게시물 검색으로 새로운 게시물 등록시 지메일로 파일 보내기

 

소스

import time
from unicodedata import lookup #time 명령어 사용하기 
from bs4 import BeautifulSoup # BeautifulSoup 불러오기
#파이썬 requests 모듈은 간편한 HTTP 요청처리를 위해 사용하는 모듈로 별도로 설치해 주어야 한다.
import requests #pip3 install requests
 
#고시공고 농업정책과 1번 https://www.gyeongju.go.kr/open_content/ko/page.do?pageNo=1&srchEnable=1&srchKeyword=%EB%86%8D%EC%97%85%EC%A0%95%EC%B1%85%EA%B3%BC&srchSDate=1960-01-01&srchBgpUid=-1&mnu_uid=423&parm_mnu_uid=0&srchEDate=9999-12-31&srchColumn=con_name&srchVoteType=-1&
keyword = ['농업정책과','축산과','환경과']
keyword = keyword[1]
url = "https://www.gyeongju.go.kr/open_content/ko/page.do?pageNo=1&srchEnable=1&srchKeyword="+keyword +"&srchSDate=1960-01-01&srchBgpUid=-1&mnu_uid=423&parm_mnu_uid=0&srchEDate=9999-12-31&srchColumn=con_name&srchVoteType=-1&"
html = requests.get(url)
bs_html = BeautifulSoup(html.content,"html.parser")
 
first_ = bs_html.select("table tr")[1]
href = first_.find_all("td")[1].find("a")
#print("https://www.gyeongju.go.kr" + href['href']) #테그의 a href url주소가 취득하기
 
first_num = first_.select("td")[1].text #제목 추출하기
print(first_numsep='\n')
 
import os.path  #파일경로 
filename = 'C:/Users/크리스퍼/python_code/경주시청/고시공고.txt'
 
if os.path.isfile(filename):    
    print("기존 고시공고 파일이 있어요")    
    
else:
    print("기존 고시공고 파일이 없어요"
    f = open(filename,'w',encoding='UTF-8')
    f.close()
       
time.sleep(1)       
f = open(filename,'r',encoding='UTF-8')
try
    line = f.readlines()[0]
except:
    line=""
    print('신규문서로 읽어올 자료가 없습니다.')
 
print(line)
f.close()
 
# adddata.py
if(line!=first_num):
    print("고시공고 파일을 삭제합니다.")
    os.remove(filename)
    print("고시공고 파일을 갱신합니다.")
    f = open(filename,'w',encoding='UTF-8')
    f.close()
       
    print("새로운 정보가 입력됩니다.")
    f = open(filename,'a',encoding='UTF-8')
    f.write(first_num)
    f.close()
 
    # 지메일 발송-*- coding:utf-8 -*-
    import smtplib #smtplib은 SMTP를 사용하기 위한 모듈
    from email.mime.text import MIMEText #MIMEText는 메일을 보낼 때 메시지의 제목과 본문을
    smtp = smtplib.SMTP('smtp.gmail.com'587#세션을 만들기 위해 SMTP 인스턴스를 이용하여 SMTP 연결을 캡슐화
 
    smtp.ehlo()      # say Hello
    smtp.starttls()  # TLS 사용시 필요
    smtp.login('구글@gmail.com''IMAP 앱 비밀번호')
    #계정 비밀번호를 입력해서는 안됩니다!
    #또한 지메일 계정을 다른 디바이스에서 사용하기 위해서는 IMAP을 설정해주어야 하는데,
    #앱 비밀번호 생성 및 IMAP 설정 방법은 아래와 같습니다.
 
    #☞ IMAP 설정하는 방법
    #1. 지메일 계정에 로그인합니다.
    #https://yeolco.tistory.com/93
    
    msg = MIMEText('경주시청 고시공고' + keyword + '새로운 게시물')
    msg['Subject'] = first_num
    msg['To'] = 'kim@naver.com'
    smtp.sendmail('지메일@gmail.com','지메일@gmail.com'msg.as_string()) # 사람, 사람, ...
    
    smtp.quit()
    print("메일 발송완료")
 
else:
    print("중복된 내용입니다.")

 

 

 

결과

PS C:\Users\크리스퍼\python_code> & C:/Users/크리스퍼/AppData/Local/Programs/Python/Python39/python.exe c:/Users/크리스퍼/python_code/경주시청/고시공고.py

야생멧돼지 아프리카돼지열병(ASF) 발생지역산 청예(풀)사료 급여금지 행정명령 공고  

기존 고시공고 파일이 있어요

야생멧돼지 아프리카돼지열병(ASF) 발생지역산 청예(풀)사료 급여금지 행정명령 공고  

중복된 내용입니다.

PS C:\Users\크리스퍼\python_code> 

로그인 후 댓글쓰기가 가능합니다.

?

List of Articles
번호 분류 제목 날짜 조회 수
2154 종교와철학 리스트와 쇼팽 이야기 2 file 2009.11.23 9722
2153 종교와철학 역발상투자의 원조, 가세박사 file 2009.11.23 6822
2152 컴퓨터잡담 bat(배치) 파일 제대로 쓰기 2009.11.24 6874
2151 컴퓨터잡담 Ghost용 배치 파일 작성 예 1 2009.11.24 8163
2150 컴퓨터잡담 Windows 초간단 remote 백업 명령 2009.11.24 23511
2149 컴퓨터잡담 mysql 접속에러시 재부팅 하는 배치파일 2009.11.24 26693
2148 컴퓨터잡담 mysql 접속불가시 재부팅 2009.11.24 12089
2147 컴퓨터잡담 windows error 코드표 4 2009.11.25 22197
2146 컴퓨터잡담 php 에서 mysql 제어하기 2009.11.28 28200
2145 컴퓨터잡담 TIME_WAIT 줄이기(소켓이 부족하여 프로세스 강제중단을 막기위해) 4 2009.11.30 34111
Board Pagination Prev 1 ... 18 19 20 21 22 ... 235 Next
/ 235

http://urin79.com

우린친구블로그

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소