ขอวิธีดึงข้อมูลใน list มาแสดงเป็นข้อความทีละบรรทัด

แนะนำ สอบถาม ภาษา C สำหรับผู้เริ่มต้น ภาษา Java ภาษา Python

Moderators: mindphp, ผู้ดูแลกระดาน

User avatar
chakirin.bfds
PHP Super Hero Member
PHP Super Hero Member
Posts: 592
Joined: 22/12/2020 10:19 am

ขอวิธีดึงข้อมูลใน list มาแสดงเป็นข้อความทีละบรรทัด

Post by chakirin.bfds »

ตอนนี้ผมกำลังทำงาน เรื่อง ตรวจสอบลิงค์แล้วส่งเมลล์ผ่าน SMTP ของ Mailgun ด้วย Python
ซึ่งตอนนี้สามารถตรวจเช็คลิงค์ได้เเล้ว หากลิงค์ไม่สามารถเข้าได้ ให้ส่งแจ้งไปทางเมลล์ได้เเล้ว แต่ตัวลิงค์ที่ส่งไปมีเเค่ลิงค์เดียวครับ
Selection_196.png
Selection_196.png (43.71 KiB) Viewed 224 times
ซึ่งตอนรันผมได้เก็บลิงค์เป็น list ในตัวแปร save_link จากนั้น สร้างลูปอ่านค่า เเล้วนำค่าไปใช้ในการส่งเมลล์
code ที่เขียนตอนนี้

Code: Select all

import urllib.request
import configparser
import time
import email
import smtplib

con = None
config = configparser.ConfigParser()
config.read('admin.conf')

SMTP=config['options']['SMTP']
ports=config['options']['ports']
user = config['options']['user']
password = config['options']['password']
recipient = config['options']['recipient_email']
sender = "ติดต่อทาง pm"


link = open("check_link.txt","r")
r_link = link.readline()
r_link = r_link.split()
r_link= open('check_link.txt')
plt = open("plateformEmail.txt")
plt = plt.read()

save_link = []
check = []
#con = None
#config = configparser.ConfigParser()      ใช้วิธีการด้วย readlin readfile

timeis = time.localtime()
time_hr = timeis.tm_hour
time_min = timeis.tm_min
time_sec = timeis.tm_sec

n = 1
print("Start_test:" ,time_hr,":",time_min,":",time_sec)

for line in r_link:
    print("link:",n)
    n += 1
    try:
        response = urllib.request.urlopen(line)

        if response.getcode() == 200:
            save_link.append("That link is ok:"+line)
            check.append("Y")
            print("""That link is ok:{} Time_test :{}{}{}{}{} """.format(line, time_hr,":",time_min,":",time_sec))



        else:
            print('The response code was not 200, but: {}'.format(
                response.get_code()))
    except urllib.error.HTTPError as e:
        print('''That link is error occurred:{}
        The response code was {}
        Time_test :{}{}{}{}{}'''.format(line,e.getcode(), time_hr,":",time_min,":",time_sec))
        save_link.append("That link is error occurred:" + line)
        check.append("N")
#save_link = save_link.split(",")
print(save_link)
N="N"

if N in check:
    print("send Email")
    for all_link in save_link:
        print(all_link)


    msg = email.message_from_string(plt+"\n"+ all_link +"\n"  ) #ข้อความที่ต้องการส่ง
    msg['Subject'] = "test smtp mailgun with python"

    s = smtplib.SMTP(SMTP,25)
    s.ehlo() # ชื่อต่อกับ Hostname
    # s.starttls() # กำหนดใช้ใช้ SSL การติดต่อกับ SMTP server ด้วยโหมท TLS mode ถ้าport 25 ไม่ต้องใช้ เเต่ถ้า 46 ต้องใช้
    #s.ehlo()
    s.login(user, password)
    s.sendmail(sender,recipient, msg.as_string().encode('utf-8'))
    s.quit()
print("sended Email")
ช่วยเเนะนำวิธีการนำข้อมูลที่อยู่ใน save_link ทั้งหมดมาแสดงเเล้วส่งemail หน่อยครับ
User avatar
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
Posts: 27153
Joined: 22/09/2008 6:18 pm
Contact:

Re: ขอวิธีดึงข้อมูลใน list มาแสดงเป็นข้อความทีละบรรทัด

Post by mindphp »

วน Loop แล้วต่อ sting
เข้าไป ครับ
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
User avatar
chakirin.bfds
PHP Super Hero Member
PHP Super Hero Member
Posts: 592
Joined: 22/12/2020 10:19 am

Re: ขอวิธีดึงข้อมูลใน list มาแสดงเป็นข้อความทีละบรรทัด

Post by chakirin.bfds »

mindphp wrote: 21/01/2021 6:42 pm วน Loop แล้วต่อ sting
เข้าไป ครับ
ต่อยังไงน่ะครับ ใช่การแปลงเป็น string หรือเปล่าครับ
User avatar
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
Posts: 27153
Joined: 22/09/2008 6:18 pm
Contact:

Re: ขอวิธีดึงข้อมูลใน list มาแสดงเป็นข้อความทีละบรรทัด

Post by mindphp »

ข้อมูลใน loop วนมาเป็น sting แต่ละ บรรทัดแล้ว
เชื่อม sting เป็น ข้อความยาวๆ 1 ข้อความ ใช้ข้อความนั้น เพื่อส่งเมลต่อ
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
Post Reply

Return to “Programming - C/C++ & java & Python”

Who is online

Users browsing this forum: No registered users and 10 guests