Yazar | Baldwin_KeepMind
Üretildi | CSDN Blogu
Günlüğüm 23 Nisan Sunny Bana üç gündür cevap vermedin. Yorulmak bilmeyen tacizimden sonra, sonunda bana dönmeye hazırsın. "Nmsl" dedin ve sanırım bir anlamı olmalı! Oh! Birden Nimesulide granülleri olduğunu fark ettim. Artrit olduğumu biliyordu ve Nimesulide granülleri almamı istedi, hala beni önemsiyordu ama bu kadar hevesli olmak istemiyordu. AMAN TANRIM! O kadar soğuk ki, ondan daha çok hoşlanıyorum!Görüyorsunuz, tanrıça beni sık sık görmezden gelse de, yine de gizlice benimle ilgileniyor Doğrudan konuşmasa da her şeyi anlıyorum.
Tek sorun, son zamanlarda çok meşgul olmam ve tanrıçaya "Günaydın" ı gönderecek zamanım olmaması. Hayır! "Günaydın" asla kırılamaz. Bu benim tanrıçaya olan içten sevgim.Tanrıça bana cevap vermese de, bunu kalbinde tutmalı. Cevap vermezse, beni test etmeliyim!
Her şeye gücü yeten bir programcı olarak, Python ile neden aşk kelimelerini tarayıp her gün düzenli olarak ona göndermeyelim diye hemen düşündüm.
Aşk kelimelerini sürün
Aşk kelimeleri kaynaklarını seçin
Öncelikle internette uygun aşk kaynakları bulmamız gerekiyor. Eğer onu kendin bulamayacak kadar tembelsen bunu kullanabilirsin:
Web kaynaklarını analiz edin
1. Aşk kelimelerinin kaynaklarını bulun
Fareyi, taramak istediğimiz aşk kelimelerinin üzerine getirin ve hızlıca sağ tuş + kontrol (öğe) tuşuna basın.
Aşk sözlerimizin ilk sayfada nerede olduğunu görebilirsiniz.
2. Etiketi bulun
Geliştirici araçlarında, yukarıdaki kırmızı kutudaki içerik olan aşk sözlerimizin etiketini kolayca buluruz.
3. İstek yöntemini analiz edin
Hemen arayüzde yenileyin (geliştirici modundan çıkmayın):
Ağ sütununun altında istediğimiz kaynağı bulun ve Başlıklardaki kaynak isteği yöntemini bulun, işte GET.
Kaynakları almak için urllib kitaplığını kullanın
1. urllib kitaplığını kurun
Bu adım, sunucunuzda urllib2 kitaplığının bulunmaması ve sorun yaşarsanız daha sonra ekleyeceğiniz içindir. Kitaplığı eklemezseniz, eklemek için lütfen Baidu.
2. Kaynak web sitesi isteyin
Kod:
urllib.request'i içe aktar url = " html = urllib.request.urlopen (url) .read baskı (html)sonuç:
...... < h1 > ÿ ÌìÒ »¾ä¡ Çé »° < / h1 > < div class = "içerik" > < div class = "haberler" > < script type = "text / javascript" > haber1; < /senaryo > < / div > < p > 1 ¢ ½ «Äã · ŽøÎÒÄÀï × îÖØÒªµÄλ Öà £ ¬ÓÃÄÀ´¿ ÌÄãµÄÃû × Ö¡ £ < / p > < p > 2 ¢ ° ®ÊÇ̤Æƺ쳾Íû´ © ÇïË® £ »° ®ÊÇÒ» ÉúÒ »ÊÀÚ¤Ú¤ÂÖ» Ø £ »° ®Äã £ ¬ÎÒ²» ÎÊÀíÓÉ¡ £ < / p > < p > 3¡ ¢ × §ÄãÈë »£ ¬ÓèÄãÒ» ÊÀÏà ° é £ ¬ÓµãÈë »³ £ ¬» ¤ÄãÒ »ÊÀƽ ° ²¡ £ < / p > < p > 4¡ ¢ ÖÇÒ ° Ä £ ¬ÎÒÔ¤Ä ± ÁËÒ »± ² × ÓµÄÄîÏë £ ¬´ÓÓö¼ûÄã¿ ªÊ¼ £ ¬² »¼û» ÆÍÁ² »ËÀÄ¡ £ < / p > < p > 5¡ ¢ ÒºóÀ´ÏëÁËÏë £ ¬ÎÒ² »µ ¢ ÎóÄã £ ¬» ¹ »áÓ ± È˵ ¢ ÎóÄã £ ¬ÄÇÎÒ²» ¸ÊÄ £ ¬ »ÊÇÎÒÀ´µ ¢ ÎóÄã ° É¡ £ < / p > < p > 6¡ ¢ ¼ûµ½ÄãµÄÄÇÒ »¿ ÌÎҾͲ »ÖªËù´ë £ ¬ÓµÄÖ» ǵÄø £ ¬ÊÇÄã¸Ä ± äÁËÎÒ £ ¬ÒÔÇ ° ÎÒ´Ó² »» áÕâÑùÄ¡ £ ¼ÙÈçÓÒ »öÈËÄÜÈÃÎÒĸÊÇéÔ¸µØ¸Ä ± äÄǾÍÊÇÄã¡ £ < / p > < p > 7¡ ¢ ÅãÎÒµ½¿ É¿ ÉÎ ÷ ÀïÈ ¥ ¿ ´º £ ² »ÒªÎ´À´Ö» ÒªÄãÀ´¡ £ < / p > < p > 8 ¢ ÿ Ò »Ì춼ΪÄãÄÌø £ ¬Ã¿ Ö" ̶¼ ± »Ä㸶¯ £ ¬Ã¿ Ò »Ã¶¼ÎªÄãµ £ Ä¡ £ ÓÄãµÄ¸¾õÕæºÃ¡ £ < / p > < p > 9 ¢ ² »¸ÒÔÙÌÇé¸è £ ¬µ ± ÎÒ¸öÈË £ ¬ÒòΪÑÛÀáÖ¹²» × ¡ ¡ £ < / p > ......Küçük soru işareti, çok arkadaşın var mı?
Aşağı indiğimiz tek şey bozuk kodlardı ve tanrıçaya bir sürü bozuk kod gönderdik. Tanrıça yine de ona gönderdiğimiz kod kelimesi olduğunu düşünebilir. Belki bir şifre çözme yöntemi bulmak zaman alır. Bunu düşünmek yoruldu.
Aslında, bozuk kodun nedeni, ana web sayfasının kodlama yönteminin tarama programımızın kodlama yönteminden farklı olmasıdır, sadece web sayfasının kodlama yöntemini bulun.
3. Kod çözme türünü ayarlayın
3 yol vardır:
1. Web sayfasının içerik türünden kodlama yöntemini alın
2. Üçüncü taraf kitaplık akıllı kimlik kodu, yaygın olarak kullanılan pazı vb.
3. Kodu tahmin edin
Burada aslında istek başlığının İçerik-Türünde kodlama türüne sahibiz, ancak güvenli tarafta olmak ve daha fazla kaynak web sitesine başvurabilmek için, işte aşağıdaki pazı kullanımının gösterimi, lütfen kodlamanın kullanımını tahmin etmek için Baidu'yu kullanın.
pazı kodlama türünü al
Kod:
urllib.request'i içe aktar ithal pazı url = " html = urllib.request.urlopen (url) .read print ("html başlığında karakter kümesi:", chardet.detect (html))sonuç:
/usr/bin/python3.7 /home/baldwin/PycharmProjects/IAmADog/spider/Spider.py HTML başlığındaki karakter kümesi: {'kodlama': 'GB2312', 'güven': 0.99, 'dil': 'Çince'} İşlem 0 çıkış koduyla tamamlandıAlmak! ! ! Kodlama yöntemi GB2312'dir!
Kod çözmeyi ayarla
Kod:
urllib.request'i içe aktar ithal pazı url = " html = urllib.request.urlopen (url) .read charset = chardet.detect (html) .get ("kodlama") htmlText = html.decode (karakter kümesi, hatalar = 'yoksay') baskı (htmlText)sonuç:
......
< h1 > Her gün küçük bir aşk kelimesi < / h1 >
< div class = "içerik" > < div class = "haberler" > < script type = "text / javascript" > haber1; < /senaryo > < / div >
< p > 1. Sizi kalbimdeki en önemli konuma getirin ve isminizi yürekten kazın. < / p >
< p > 2. Aşk, kırmızı tozun içinden geçiyor ve sonbahar suyuna bakıyor; aşk, yaşamın reenkarnasyonudur; seni sevmek, nedenini sormuyorum. < / p >
< p > 3. Sizi kollarınıza çekin, hayatınızın geri kalanında size eşlik edin, sizi kollarınızda tutun ve hayatınızın geri kalanında huzurunuzu koruyun. < / p >
< p > 4. Bu hırsdan daha fazlası. Bir ömür boyu planladım. Seninle tanıştığımdan beri, lösü görmezsem asla pes etmeyeceğim. < / p >
< p > 5. Daha sonra düşündüm, sizi geciktirmeyeceğim ve diğerleri sizi geciktirecek, sonra uzlaşmam, sizi geciktireyim. < / p >
< p > 6. Seni gördüğüm an, kayboldum.Her şey sadece bir kalp atışıydı, beni değiştirdin.Bunu daha önce hiç yapmadım. Beni isteyerek değiştirebilecek bir kişi varsa o da sensin. < / p >
< p > 7. Denizi görmek için bana Hoh Xil'e eşlik edin, sadece gelecekte gelmenize izin vermeyin. < / p >
< p > 8. Kalbim her gün senin için atıyor, her an senin tarafından hareket ettiriyorum ve her saniye senin için endişeleniyorum. Sana sahip olmak iyi hissettiriyor. < / p >
......
Oh kükreme! Bunu bitir!
4. Paket kodu
Şu anda kaynak elde etmeyi başardık, ancak bu tür bir kodu kullanmak çok zahmetli, onu bir yöntemde özetliyoruz:
...... urllib.request'i içe aktar ithal pazı def getHtml (url): "" " Web sayfası html metin kaynaklarını edinin : param url: web bağlantısı : return: Web sayfası metin kaynağı "" " html = urllib.request.urlopen (url) .read charset = chardet.detect (html) .get ("kodlama") htmlText = html.decode (karakter kümesi, hatalar = 'yoksay') htmlText'e dönWeb kaynaklarını ayrıştırın
Web sayfalarını ayrıştırmak için, verileri xml ve HTML biçiminde ayıklamak için bir üçüncü taraf Beautiful Soup eklentisine ihtiyacınız var.
İçerik düğümü içeriğini alın
İstediğimiz kaynakların tümü bir "içerik" sınıfına sahip bir div düğümü altında. Önce bu düğümün tüm içeriğini alalım.
Kodun bir parçası:
çorba = BeautifulSoup (htmlText, "html.parser") "İçerik düğümünün içeriğini alın" div_node = çorba.find ('div', sınıf _ = 'içerik') print (div_node.get_text)sonuç:
/usr/bin/python3.7 /home/baldwin/PycharmProjects/IAmADog/spider/Spider.py < bağlı yöntem Tag.get_text of < div class = "içerik" > < div class = "haberler" > < script type = "text / javascript" > haber1; < /senaryo > < / div > < p > 1. Sizi kalbimdeki en önemli konuma getirin ve isminizi yürekten kazın. < / p > < p > 2. Aşk kırmızı tozun içinden geçiyor ve sonbahar suyuna bakıyor; aşk hayatın reenkarnasyonudur; seni sevmek, nedenini sormuyorum. < / p > < p > 3. Sizi kollarınıza çekin, hayatınızın geri kalanında size eşlik edin, sizi kollarınızda tutun ve hayatınızın geri kalanında huzurunuzu koruyun. < / p > < p > 4. Bu hırsdan daha fazlası. Bir ömür boyu planladım. Seninle tanıştığım andan itibaren, lösü görmezsem asla pes etmeyeceğim. < / p > < p > 5. Daha sonra düşündüm, sizi geciktirmeyeceğim ve diğerleri sizi geciktirecek, sonra uzlaşmam, sizi geciktireyim. < / p > ...... < sen > Bu makale adresi: < a href = " > Her gün küçük bir aşk kelimesi < / a > < / u > < li class = "sayfa" > < a href = "/ aiqingyulu /" > Önceki sayfa < / a > < span class = "current" > 1 < / span > < a href = "/ yeni / 150543.html" > 2 < / a > < a href = "/ yeni / 150541.html" > Sonraki Sayfa < / a > < / li > < / div > İşlem 0 çıkış koduyla tamamlandı2.4.3. P-düğüm içeriğini alın
Önceki adımda ana içeriğimizi elde ettik ve sonra istediğimiz metin içeriğinin P düğümünde olduğunu görebiliyoruz, o halde şimdi alalım.
Kodun bir parçası:
çorba = BeautifulSoup (htmlText, "html.parser") "Div düğümünün içeriğini alın" div_node = çorba.find ('div', sınıf _ = 'içerik') "P düğüm içeriğini alın" p_node = div_node.find_all ('p') p_node'daki içerik için: print (content.get_text)sonuç:
/usr/bin/python3.7 /home/baldwin/PycharmProjects/IAmADog/spider/Spider.py 1. Sizi kalbimdeki en önemli konuma getirin ve isminizi yürekten kazın. 2. Aşk, kırmızı tozun içinden geçiyor ve sonbahar suyuna bakıyor; aşk, yaşamın reenkarnasyonudur; seni sevmek, nedenini sormuyorum. 3. Sizi kollarınıza çekin, hayatınızın geri kalanında size eşlik edin, sizi kollarınızda tutun ve hayatınızın geri kalanında huzurunuzu koruyun. 4. Bu hırsdan daha fazlası. Bir ömür boyu planladım. Seninle tanıştığımdan beri, lösü görmezsem asla pes etmeyeceğim. 5. Daha sonra düşündüm, sizi geciktirmeyeceğim ve diğerleri sizi geciktirecek, sonra uzlaşmam, sizi geciktireyim. ...... 69. Bazen aşk da bir tür acıdır, zalim insanlar başkalarını incitmeyi, iyi kalpli insanlar kendilerini incitmeyi seçerler. ...... İşlem 0 çıkış koduyla tamamlandı4. Verilerin işlenmesi
69. dramaya dikkat edin, içinde web sitesine bir bağlantı var. Bunu tanrıçaya gönderirseniz, size her şeyi gösterecektir.Şimdi onun için onu silmenin bir yolunu bulmalısınız. Aynı zamanda aşk kelimelerinin önündeki rakamın silinmesi gerekmektedir.
Belirli etiketleri kaldırın
Verileri kontrol edip tüm bağlantıların U etiketinde olduğunu bulacağız, ardından div etiketinin içeriğini aldıktan sonra doğrudan u etiketini silebiliriz.
"Belirli etiketi sil u"Sıra numarasını sil
Seri numarasının ve aşk kelimelerinin virgülle ayrıldığını gördük, ardından içeriği her bir P etiketinin altına bölebilir ve ikinci öğeyi çıkarabiliriz.
Kodun bir parçası:
"P düğüm içeriğini alın" p_node = div_node.find_all ('p') p_node'daki içerik için: "Ayır" ve "ve ikinci öğeyi çıkar" text = content.get_text.split (",", 1) baskı (metin)sonuç:
/usr/bin/python3.7 /home/baldwin/PycharmProjects/IAmADog/spider/Spider.py Seni kalbimdeki en önemli yere koy ve adını yürekle kazı. Aşk kırmızı tozun içinden geçiyor ve sonbahar suyuna bakıyor; aşk hayatın reenkarnasyonudur; seni sevmek, nedenini sormuyorum. Sizi kollarınıza çekin, hayatınızın geri kalanında size eşlik edin, sizi kollarınızda tutun ve hayatınızın geri kalanında huzurunuzu koruyun. Bu hırsdan daha fazlası. Bir ömür boyu planladım. Seninle tanıştığım andan itibaren, lösü görmezsem asla pes etmeyeceğim. Daha sonra düşündüm, seni geciktirmeyeceğim ve diğerleri seni geciktirecek, sonra uzlaşmam, seni geciktirmeme izin ver. ...... İşlem 0 çıkış koduyla tamamlandıGüzel, bu adımda ihtiyacımız olan tüm aşk kelimelerini çıkardın! ! !
Paket veri yedekleme
Bu cümle ile cümle ile başa çıkmak kolay değil! Zamanlanmış görev için uygun olduğunda onu listeye koymak ve çıkarmak daha iyidir.
Kodun bir parçası:
sentenceList = liste ...... "P düğüm içeriğini alın" p_node = div_node.find_all ('p') p_node'daki içerik için: "Ayır" ve "ve ikinci öğeyi çıkar" text = content.get_text.split (",", 1) "Listenin sonuna ekle" cümleList.append (metin)baskı (cümleListesi):
/usr/bin/python3.7 /home/baldwin/PycharmProjects/IAmADog/spider/Spider.py İşlem 0 çıkış koduyla tamamlandı5. Kapsülleme (tarayıcı kodu nihaidir)
Tarayıcı hazır, ama ben her zaman itaatkar hissediyorum. Daha sonra başka yerlerde kullanmam gerekiyor. Tarayıcıyı burada nesneye yönelik bir fikirle özetlemek daha iyi.
urllib.request'i içe aktar bs4'ten BeautifulSoup içe aktarın ithal pazı def __getHtml (url): "" " Özel yöntem: web sayfasının html metin kaynaklarını alın : param url: web bağlantısı : return: Web sayfası metin kaynağı "" " html = urllib.request.urlopen (url) .read charset = chardet.detect (html) .get ("kodlama") htmlText = html.decode (karakter kümesi, hatalar = 'yoksay') htmlText'e dön def __sloveHtml (htmlText): "" " Özel yöntem: HtmlText'i ayrıştırma : param htmlText: gelen kaynak "" " sentenceList = liste çorba = BeautifulSoup (htmlText, "html.parser") "İçerik düğümünün içeriğini alın" div_node = çorba.find ('div', sınıf _ = 'içerik') "Belirli etiketi sil u" "P düğüm içeriğini alın" p_node = div_node.find_all ('p') p_node'daki içerik için: "Ayır" ve "ve ikinci öğeyi çıkar" text = content.get_text.split (",", 1) "Listenin sonuna ekle" cümleList.append (metin) dönüş cümle listesi def getSentenceList (url): "" " Spider tarafından sağlanan ve aşk kelimelerinin bir listesini sağlayan halka açık bir yöntem : param url: Aşk kelimelerinin adresini alın : dönüş: aşk kelimeleri listesi "" " dönüş __sloveHtml (__ getHtml (url))Tarayıcı özeti
Bu bölümde kullanılan ana kitaplıklar şunlardır: BeautifulSoup, urllib, chardet.
Ana fikir: kapsülleme
Cep telefonuyla SMS gönder
Başlangıçta WeChat veya QQ yoluyla göndermek istedim, ancak iki yıl sonra, qqbot, itchat, wxpy vb. Gibi üçüncü taraf kitaplıklarının tümü başarısız oldu, bu yüzden SMS ile gönderemiyorum.
1. Twilio
Twilio, açık bir eklenti haline getirilmiş bir arama izleme hizmetidir
Twilio, geliştiricilerin telefon aramalarını, metin mesajlarını ve diğer işlevleri uygulamalarına entegre etmelerine yardımcı olmaya kararlıdır.Şirket Salı günü, geliştiricilerin esnek ve düşük maliyetli İnternet Protokolü üzerinden Ses (VoIP) işlevlerini entegre etmelerine yardımcı olabilecek Twilio Client adlı yeni bir hizmet başlattı. .
VoIP, Skype ve Google Phone gibi servisler tarafından kullanılan teknolojidir.VoIP servislerini sağlamak için genellikle ilgili temel ekipmanı hazırlamak gerekir. Twilio Client, geliştiricileri bu sorundan kurtarır ve uygulamaya VoIP elemanlarını kolayca eklemelerine izin verir.
Kurulum
Kurulum süreci nispeten basittir, doğrudan aktarın:
sudo pip3 twilio yüklemek
Kurulumun tamamlanmasını bekleyin
Twilio başarıyla inşa edildi Toplanan paketleri yükleme: PyJWT, twilio PyJWT-1.7.1 twilio-6.38.1 başarıyla yüklendiKaydolun ve üç önemli parametreyi alın
Referans makale: https://zhuanlan.zhihu.com/p/67716042
SMS denemesi göndermek için basit kod
Kod:
twilio.rest'ten İstemci # Kılavuz paketini içe aktar account_sid = 'Sizin account_sid'niz' auth_token = 'auth_token'ınız' client = Client (account_sid, auth_token) message = client.messages.create ( _ = '+ × Mahsuranızda, body = 'Sevgili H, sana gelecekte her gün bir mesaj göndereceğim! ! ! ', to = 'Göndermek istediğiniz telefon numarası (+86 ile başlayan)' ) print (message.sid)Konsol çıkışı:
/usr/bin/python3.7 /home/baldwin/PycharmProjects/IAmADog/qqsend/Send.py SMfe64f40f2ac24b8ca82121d57147312c İşlem 0 çıkış koduyla tamamlandıSMS alan cep telefonu:
TAMAM! Şimdiye kadar SMS gönderme işlevini basitçe gerçekleştirdik, şimdi bu işlevi özetleyeceğiz.
SMS gönderme işlevini gerçekleştirin
Paket kodu:
twilio.rest'ten İstemci # Kılavuz paketini içe aktar def sendSMSMsg (içerik, tel): "" " Cep telefonu numarasına SMS içeriği gönderin : param içeriği: SMS içeriği : param tel: cep telefonu numarası "" " account_sid = 'Sizin account_sid'niz' auth_token = 'auth_token'ınız' client = Client (account_sid, auth_token) client.messages.create ( _ = '+ 18634171608' den, body = içerik, to = tel ) print ('Gönder:', içerik, 'tele:', tel, 'başarıyla !!!') __name__ == '__ main__' ise: sendSMSMsg ("Merhaba?", "+ × MahsulTest sonuçları:
/usr/bin/python3.7 /home/baldwin/PycharmProjects/IAmADog/qqsend/Send.py Gönder: Merhaba? Tele: +8618436354553 syccessfully !!! İşlem 0 çıkış koduyla tamamlandıSMS alan cep telefonu:
SMS özeti gönder
Twilio'ya kaydolun
Üç parametre alın: account_sid, auth_token, TRIAL NUMBER
Twilio'yu tanıtın
Göndermek istediğiniz telefon numarasını ve içeriği ayarlayın
İşlem nispeten basittir, bu bölüm esas olarak twilio kitaplığını kullanır.
Düzenli olarak SMS gönderin
Bu adım ana programımız olarak değerlendirilebilir, bu bölümde önce aşk sözcükleri listesini almak için önceki kodu kullanıp ardından zamanlanmış görevleri ayarlayıp her gün belirli bir saatte tanrıça telefonuna kısa mesaj göndermemiz gerekiyor.
Python zamanlama görevleri
Python'da oldukça fazla zamanlanmış görev çerçevesi var. Şu anki ihtiyacımız her gün sabah saat 8'de bir görev yürütmek ve bu saatten önce bilgi göndermemek.Kolay anlaşılması için sistemin şu anki saatini doğrudan taramayı planlıyorum, eğer İhtiyacımız olan zamanda geldiğimizde onu göndereceğiz ve vardığımızda taramaya devam edeceğiz.
Kod
ithalat zamanı True iken: # Yenile time_now = time.strftime ("% H:% M:% S", time.localtime) # Burada günlük saati ayarlayın time_now == "15:29:00" ise: # Gerçekleştirilecek eylem print ('Zamanlanmış görev bir kez yürütülür') time.sleep (2) # Saniyeler içinde zamanlandığından, 2 saniye duraklar, böylece 1 saniye içinde birden çok kez çalıştırılmaz.sonuç:
/usr/bin/python3.7 /home/baldwin/PycharmProjects/IAmADog/DoWork.py Zamanlanmış görevler bir kez yürütülür Geri izleme (en son çağrı son): Dosya "/home/baldwin/PycharmProjects/IAmADog/DoWork.py", satır 7, < modül > time_now = time.strftime ("% H:% M:% S", time.localtime) Klavye Kesintisi İşlem, çıkış kodu 1 ile tamamlandıProgramı 15: 28: 00'da çalıştırdım ve gerçekten de ayarlanan zamanda çalıştırıldı.
Aşağıdaki istisna, programdan manuel olarak çıkmış olmamdır, bu yüzden burada onu umursamıyorum.
Aşk kelimelerinin gönderilmesinin özel olarak gerçekleştirilmesi
Özel gereksinimleri burada sıralayalım:
1. Sabit bir zaman noktasında gönderin (yukarıda uygulanmıştır)
2. Her gönderdiğinizde listeden bir cümle çıkarın ve sonraki cümleyi bir sonraki gönderinizde çıkarın. Tekrar edilemez
3. Listedeki cümle gönderildikten sonra bana bildirmek için bir metin mesajı gönder
Cümle al
Fikir: Gönderilecek bir sonraki cümlenin alt imgesini temsil eden global bir değişken indeksi ayarlayın.Her SMS gönderildikten sonra, alt simge 1 artırılmalıdır
Yöneticiyi gönderdikten sonra bilgilendirin
Fikir: Her görev girdiğinizde, ancak bir metin mesajı göndermeden önce, dizinin değerini listenin uzunluğu ile karşılaştırmalısınız (şimdi düşünün, programı tasarlarken verileri depolamak için yığını kullanmak daha iyi olur), dizin aralık dışındaysa, doğrudan yöneticiye bir metin mesajı gönderin Farkına varmak.
başarmak
örümcek ithalatından Örümcek göndermeden içe aktar Gönder ithalat zamanı TIME_TO_DO = '08: 30: 00 '# Zaman noktası gönder MSG_SUFFIX = '\ nKüçük sevimli Baldwin'den' # SMS son eki SOURCE_URL = 'http: //www.1juzi.com/new/150542.html' # Aşk kelimeleri kaynak adresi SEND_TO_TEL = '+ 8618436354553' # Tanrıçanın telefon numarası SEND_TO_ME = 'Köpeği yalamak, tanrıçaya gönderilen metin mesajları tükendi, gel ve güncelle! ! ! ' MY_TEL = '+ 8618436354553' # köpek telefon numarası index = 0 # Bir sonraki mesajın alt simgesi sentenceList = Spider.getSentenceList (SOURCE_URL) # Aşk kelimeleri listesi True iken: # Yenile time_now = time.strftime ("% H:% M:% S", time.localtime) # Burada günlük saati ayarlayın time_now == TIME_TO_DO ise: # Gerçekleştirilecek eylem # Mevcut listenin kullanılıp kullanılmadığını belirleyin eğer dizin > = len (cümleListesi): # Bittiğinde bana SMS ile haber ver Send.sendSMSMsg (SEND_TO_ME, MY_TEL) # Dışarı atlamak kırmak # Tanrıçaya mesaj at içerik = cümleListesi + MSG_SUFFIX Send.sendSMSMsg (içerik, SEND_TO_TEL) # Alt simge artı bir dizin + = 1 # Saniyeler içinde zamanlandığından, 2 saniye duraklar, böylece 1 saniye içinde birden çok kez çalıştırılmaz. zaman.sleep (2)Hata ayıklama modunda çeşitli testler:
SMS gönderme testi
Fikir hata ayıklama modunda, time_now parametresini ayarlayabilir ve daha önce SMS'i göndermek istediğimiz noktaya ayarlayabilirsiniz ve SMS başarıyla gönderilir:
Yönetici bildirim testi
Benzer şekilde, hata ayıklama modunda, indeksin değerini len (cümleListesi) olarak ayarlayın ve program, burada gösterilmeyecek olan bildirim yöneticisi modülüne girer.
Paket içeriği
örümcek ithalatından Örümcek göndermeden içe aktar Gönder ithalat zamanı TIME_TO_DO = '08: 30: 00 '# Zaman noktası gönder MSG_SUFFIX = '\ nKüçük sevimli Baldwin'den' # SMS son eki SOURCE_URL = 'http: //www.1juzi.com/new/150542.html' # Aşk kelimeleri kaynak adresi SEND_TO_TEL = '+ 8618436354553' # Tanrıçanın telefon numarası SEND_TO_ME = 'Köpeği yalamak, tanrıçaya gönderilen metin mesajları tükendi, gel ve güncelle! ! ! ' MY_TEL = '+ 8618436354553' # köpek telefon numarası def doSend: index = 0 # Bir sonraki mesajın alt simgesi sentenceList = Spider.getSentenceList (SOURCE_URL) # Aşk kelimeleri listesi True iken: # Yenile time_now = time.strftime ("% H:% M:% S", time.localtime) # Burada günlük saati ayarlayın time_now == TIME_TO_DO ise: # Gerçekleştirilecek eylem # Mevcut listenin kullanılıp kullanılmadığını belirleyin eğer dizin > = len (cümleListesi): # Bittiğinde bana SMS ile haber ver Send.sendSMSMsg (SEND_TO_ME, MY_TEL) # Dışarı atlamak kırmak # Tanrıçaya mesaj at içerik = cümleListesi + MSG_SUFFIX Send.sendSMSMsg (içerik, SEND_TO_TEL) # Alt simge artı bir dizin + = 1 # Saniyeler içinde zamanlandığından, 2 saniye duraklar, böylece 1 saniye içinde birden çok kez çalıştırılmaz. zaman.sleep (2) # Ana program girişi __name__ == '__ main__' ise: doSendKüçük özet
Bu bölümde kullanılan ana modül: zaman ve sonra kendimize yaptığımız ilk iki modülü ithal etmeyi unutmayın.
sonuç olarak
Bu prosedür, temelde birbirinizle sorunları önlemek için makaleyi adım adım takip ettiğiniz sürece nispeten kolaydır.
Son olarak, son modülümüzde ana program girişini çalıştırın ve ayrıca farklı efektler elde etmek için yapılandırmayı ihtiyaçlarınıza göre değiştirebilirsiniz.
Tanrıçaya şimdi gitmesini söyleyeceğim.
Hehe! Tanrıça saniyeler içinde döndü, mutlu!
Proje adresi: https://gitee.com/dikeywork/IAmADog
Telif hakkı bildirimi: Bu makale, CSDN blog yazarı "Baldwin_KeepMind" in orijinal makalesidir. CC 4.0 BY-SA telif hakkı sözleşmesine uygundur. Lütfen orijinal kaynak bağlantısını ve yeniden basım için bu bildirimi ekleyin.
Orijinal bağlantı:
https://blog.csdn.net/shouchenchuan5253/article/details/105753596
Bugünün faydaları
Büyük kahve ile tanışın
CSDN tarafından teknik insanlar için oluşturulan yeni üst düzey diyalog sütunu "Büyük Kahve Geliyor" geliyor!
CSDN'nin kurucusu ve başkanı ve Geekbang Venture Capital'in kurucu ortağı Jiang Tao, Jingdong Group Teknoloji Başkan Yardımcısı, IEEE Üyesi, Jingdong Yapay Zeka Araştırma Enstitüsü Başkan Yardımcısı ve Derin Öğrenme ve Konuşma ve Dil Laboratuvarı başkanı He Xiaodong ile el ele verdi. Teknoloji CTO'su Hu Yichuan, Çin'de yapay zeka uygulamalarının ilk yılında geliştiricilerin ve işletmelerin gidişatından ve gelişim yönünden bahsetti!