整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          程序猿打造最強表白程序,網友看后:還有這種操作?

          程序猿打造最強表白程序,網友看后:還有這種操作?

          人節剛過,朋友圈又是刷屏的節奏。但熱鬧總是別人的,我們好像只有吃狗糧的份。時間總是飛快流逝,很多事情早已改變,但仿佛只有你的單身狀態從未改變。

          單身久的我們,好像覺得一個人過也沒什么的。但即使非常享受單身生活,大家也要保持“可勾搭”的待機狀態,因為促進荷爾蒙分沁有益身心健康。

          在這個人人都在秀的時候,做為程序員我們也要操作起來!散發你們的荷爾蒙!今天就大家奉獻上最強表白程序!此程序結合數據抓取 + 微信自動發消息 + 定時任務,實現一個能每天自動定時給你心愛的 ta 發送:你們相識相戀天數 + 情話 + 我愛你的圖片。具體的消息如下。



          每天發送的消息格式如下:

           message="""
           親愛的{}:
           早上好,今天是你和 Koc 相戀的第 {} 天~
           今天他想對你說的話是:
           {}
           最后也是最重要的!
           """.format("你的好友名稱", str(inLoveDays), love_word)
          

          這里需要填寫的第一個字段是 ta 的稱呼,inLoveDays 為你們相識相戀的天數。

          love_word 是每天為 ta 精心準備情話內容,當然如果你的文筆好也可以自己寫。

          當然最后也是最重要的!每天不盡相同的「我愛你」圖片!

          程序思路

          本次程序運行的環境是 windows10 + Python 3.6,此次主要用到的庫有 selenium、itchat、request。程序主要分為兩部分第一數據的抓取,一些情話信息和圖片信息。另一部就是利用 itchat 自動發送消息給你的好友。

          情話信息

          如果對你的文筆有信心,那你可以自己寫些情話。當然大部分人的文筆跟我一樣是比較差的,所以這時候我們就可以利用網上的資源,比如下面的情話網站。

          http://www.binzz.com/yulu2/3588.html

          在抓取這個網站的情話時,如果你利用普通的爬取思路,即利用 request 進行請求,你會發現網頁獲取的數據是亂碼并且不完整。所以在這塊為了操作方便,我利用了 selenium 的 PhantomJS 無頭瀏覽器,來獲取網站的信息。

          通過 selenium + xpath 我們就可以很輕松的獲取到網頁情話,最后把獲取到的數據保存到當前目錄下的「love_word.txt」方便之后的讀取。

          表白圖片資源

          為了配合此次表白程序,我專門去找了些帶有「我愛你」的圖片資源。通過下面的貼吧貼子,我們就可以獲取到大量的這樣資源。

          http://tieba.baidu.com/p/3108805355

          此貼并沒有很強的反爬措施,所以我簡單的利用 request + re 來獲取到圖片資源,并保存到當前目錄的下「img」文件里。

          在保存圖片資源之前,我會先檢查當前目錄下是否有「img」文件夾,如果沒有則會自動創建。

          表白程序源碼

          此次表白程序主要有 5 個函數

          crawl_Love_words()

          此函數通過 selenium + xpath 來抓取情話網站的資源,并存入到當前目錄下的「love_word.txt」文件。

          def crawl_Love_words():
           print("正在抓取情話...")
           browser=webdriver.PhantomJS()
           url="http://www.binzz.com/yulu2/3588.html"
           browser.get(url)
           html=browser.page_source
           Selector=etree.HTML(html)
           love_words_xpath_str="http://div[@id='content']/p/text()"
           love_words=Selector.xpath(love_words_xpath_str)
           for i in love_words:
           word=i.strip("\n\t\u3000\u3000").strip()
           with open(love_word_path, "a") as file:
           file.write(word + "\n")
           print("情話抓取完成")
          

          crawl_love_image()

          此函數用來爬取貼吧帶有「我愛你」的圖片資源,通過 request + re 來實現。代碼并不復雜,在正則表達式那也簡單的寫了一個,用來匹配當前也所有的圖片資源。

          def crawl_love_image():
           print("正在抓取我愛你圖片...")
           for i in range(1, 22):
           url="http://tieba.baidu.com/p/3108805355?pn={}".format(i)
           response=requests.get(url)
           html=response.text
           pattern=re.compile(r'<div.*?class="d_post_content j_d_post_content.*?">.*?<img class="BDE_Image" src="(.*?)".*?>.*?</div>', re.S)
           image_url=re.findall(pattern, html)
           for j, data in enumerate(image_url):
           pics=requests.get(data)
           mkdir(pic_path)
           fq=open(pic_path + '\\' + str(i) + "_" + str(j) + '.jpg', 'wb') # 下載圖片,并保存和命名
           fq.write(pics.content)
           fq.close()
           print("圖片抓取完成")
          


          mkdir(path)

          此函數用來在當前目錄下創建一個新的文件夾,以便存儲相應的數據。

          def mkdir(path):
           folder=os.path.exists(path)
           if not folder: # 判斷是否存在文件夾如果不存在則創建為文件夾
           os.makedirs(path) # makedirs 創建文件時如果路徑不存在會創建這個路徑
           print("--- new folder... ---")
           print("--- OK ---")
           else:
           print("正在保存圖片中...")
          


          send_new()

          此函數通過利用 itchat 庫,實現給你的微信好友自動發送消息。在這個函數中我利用 datetime 來計算你們之間相識相戀的時間。并且在登錄的時候添加了一個「hotReload=True」,這樣你就可以不用每次運行程序的時候都要登錄。關于 itchat 更多的操作,大家可以去網上查找相應的資料。

          def send_news():
           # 計算相戀天數
           inLoveDate=datetime.datetime(2018, 8, 15) # 相戀的時間
           todayDate=datetime.datetime.today()
           inLoveDays=(todayDate - inLoveDate).days
           # 獲取情話
           file_path=os.getcwd() + '\\' + love_word_path
           with open(file_path) as file:
           love_word=file.readlines()[inLoveDays].split(':')[1]
           itchat.auto_login(hotReload=True) # 熱啟動,不需要多次掃碼登錄
           my_friend=itchat.search_friends(name=u'你的好友名稱')
           girlfriend=my_friend[0]["UserName"]
           print(girlfriend)
           message="""
           親愛的{}:
           早上好,今天是你和 Koc 相戀的第 {} 天~
           今天他想對你說的話是:
           {}
           最后也是最重要的!
           """.format("你的好友名稱", str(inLoveDays), love_word)
           itchat.send(message, toUserName=girlfriend)
           files=os.listdir(pic_path)
           file=files[inLoveDays]
           love_image_file="D:\\img\\" + file
           try:
           itchat.send_image(love_image_file, toUserName=girlfriend)
           except Exception as e:
           print(e)
          


          main()

          main() 函數就是我們主邏輯函數,程序運行的邏輯順序就是在這個函數里規定的。在 main() 里我首先判斷下當前路徑下是否有「love_word.txt」文件,如果有則提示相應的信息,沒有的話才去執 crawl_Love_words() 函數,去網上抓取一些情話數據。

          其次再判斷下當前目錄下是否有「img」文件夾,用來判斷我們是否有圖片資源,沒有則執行 crawl_love_image() 來抓取貼吧上的圖片資源。

          最后我們所需的數據都已準備完善,則調用 send_news() 函數,整理下要發送的數據格式,然后自動給你的 ta 發送消息。

          定時任務

          每天定時發送我主要是用 while True 簡單的實現,通過判斷當前的時間是否是你所需要發送的時間,來達到每天定時發送。

          表白程序使用教程

          首先你把相應的源碼下載下來,后臺回復「表白」即可獲取。其次把相應的庫先事先安裝好,隨后運行程序則會顯示一個微信網頁登錄的二維碼,掃描登錄即可。


          因為我在登錄時添加了「hotReload=True」,所以程序在下次運行時就無需再重新登錄。

          總結


          文章標題寫著「最強表白程序」,雖然有點夸張了,但此次的程序還有很多可以繼續添加的地方。比如對于發送的消息字段,我們還可以繼續添加天氣信息、星座信息、娛樂新聞、最近的趣事、最近好看的電影等等。只要你能想到的內容,都可以添加上去。

          這些信息在網上都可以獲取的到,我們只要通過同樣的思路,先抓取到本地,然后進行讀取。當然如果你覺得存儲本地會有被刪的風險,那么你也可以保存到云端,在云端上進行存儲。


          看電腦性別

          難道真的不想看看你整天對著的電腦.做著不可描述的事,也不想了解了下它的性別?難道人類就是這么狠心嗎?/(ㄒoㄒ)/~~

          接下打開你萬能的記事本.寫入這段代碼: CreateObject("SAPI.SpVoice").Speak"你猜猜我是男是女"

          隨便改個文件名,后綴為vbs即可(栗子:xx.vbs) .點擊它就OK了


          HTML常用mete解釋

          mete標簽就是對不可解釋的解釋.

          ahtuor:我是MM

          <meta name="author" content="我是一個漂亮的MM" />

          keywords:求認識

          <meta name="keywords" content="節操,MM,漂亮的MM" />

          desciption:聊聊吧

          <meta name="keywords" content="這是一個有節操的網站,求度娘,谷歌認了我這個可愛的MM,其他搜索引擎DIAO都不DIAO" />

          robots:先摸下我底線吧

          <meta name="keywords" content="all" />

          all : 文件將被檢索

          none : 文件不被檢索,頁面鏈接可以被查詢

          index : 文件將被檢索

          follow : 頁面鏈接允許查詢

          noindex : 文件不被檢索,鏈接允許查詢

          nofloow : 文件允許檢索,鏈接不允許查詢

          refresh:換個姿勢吧

          meta http-equiv="refresh" content="1;url=www.annsn.com" />
          聽我解釋:不聽.我不聽
          content內的數字代表秒數.url代表跳轉的地址.這個mete功能標簽叫做重定向
          搜索引擎能夠自動檢測重定向,由于不能指定重定向原因.如302.404
          不給搜索引擎解釋的話,它就不能友好跟我們的做朋友了

          viewport:讓你的朋友認識我吧!

          <meta name="viewport" content="width=device-width; initial-scale=1.0;maximum-scale=1.0; user-scalable=no;"/>

          適用于移動設備

          initial-scale : 初始縮放比例.范圍0-10

          minimun-scale :允許縮放最小比例

          maximum-scale :允許縮放最大比例

          user-scalable : 使用可以手動縮放no或者yes

          apple-mobile-web-app-title:看名字就很DIAO了,只適合APPLE

          apple-itunes-app

          <meta name="apple-mobile-web-app-title" content="拿出你的IPhone就知道有什么用了">
          主屏標題
          <mete name='apple-itunes-app" content='myappstoreid,affiliate-date=myaffiliatedate,app-argument=myurl">
          如果你在appstore上架程序,可以在別人網站時顯示引導安裝你程序

          telephone和email

          <meta content="telephone=no" name="format-detection" /> 
          是否識別手機號和郵箱

          cache-control:不要隨便改變我

          <meta http-equiv="Cache-Control" content="no-siteapp" />
          避免百度轉碼.必須會對對移動端不友好的網頁進行轉碼.

          ╮(╯▽╰)╭不寫了,感覺這些太無聊了.還有設置編碼.瀏覽器內核控制.QQ,微信等.參考QQ瀏覽器內核標簽說明

          點擊右上角“關注”,關注小編我的頭條號,及時接收精彩內容。文末可以領取編程資料

          近日,小編在知乎上無意之間看到了這樣帖子,如下圖

          對于這樣的情況,小編覺得挺可惜的。多少次的怦然心動才換來一次付之行動,卻因為各種各樣的原因擦肩而過!到底要遇到多少在人生中途下車的人,才能遇到對的人。

          相信不少在品讀本文的讀者也會遇到這樣的事情,也許成功收獲愛情,也許情深緣淺、也許情淺緣深...

          不過,大家所最希望發生的事情肯定是有情人終成眷屬,而不是握不住的沙那就揚了她。既然這樣,那就看看下面的內容吧?。?!

          導出所有qq聊天記錄,然后使用Python詞云庫做成女朋友的背景詞云

          雖然不一定費盡心思,傾盡家財,但是卻是你們之間一點一滴的拼湊。哪里來的這么多轟轟烈烈,其實不都是生活的點點滴滴嗎?只是長而相伴,久而情深罷了...

          vbs表白

          相信一定會給她驚喜的吧!

          每天都不會缺少的微信表白:愛她就告訴她

          代碼格式如下:

          message=""" 親愛的{}: 早上好,今天是你和 Koc 相戀的第 {} 天~ 今天他想對你說的話是: {} 最后也是最重要的! """.format("你的好友名稱", str(inLoveDays), love_word)

          love_word 就是每天的情話,自己寫的話可能更好一點哦!當然,并不是所有人都文筆不錯,如果文筆一般的話可以利用 selenium 的 PhantomJS 無頭瀏覽器,來獲取網站的信息。通過 selenium + xpath 我們就可以獲取到網頁情話,最后把獲取到的數據保存到當前目錄下的「love_word.txt」方便之后的讀取。

          這個表白程序主要有5個函數

          crawl_Love_words()
          def crawl_Love_words(): print("正在抓取情話...") browser=webdriver.PhantomJS() url="http://www.binzz.com/yulu2/3588.html" browser.get(url) html=browser.page_source Selector=etree.HTML(html) love_words_xpath_str="http://div[@id='content']/p/text()" love_words=Selector.xpath(love_words_xpath_str) for i in love_words: word=i.strip("\\u3000\\u3000").strip() with open(love_word_path, "a") as file: file.write(word + "") print("情話抓取完成")
          crawl_love_image()
          def crawl_love_image(): print("正在抓取我愛你圖片...") for i in range(1, 22): url="http://tieba.baidu.com/p/3108805355?pn={}".format(i) response=requests.get(url) html=response.text pattern=re.compile(r'.*?.*?', re.S) image_url=re.findall(pattern, html) for j, data in enumerate(image_url): pics=requests.get(data) mkdir(pic_path) fq=open(pic_path + '\\' + str(i) + "_" + str(j) + '.jpg', 'wb') # 下載圖片,并保存和命名 fq.write(pics.content) fq.close() print("圖片抓取完成")
          mkdir(path)
          def mkdir(path): folder=os.path.exists(path) if not folder: # 判斷是否存在文件夾如果不存在則創建為文件夾 os.makedirs(path) # makedirs 創建文件時如果路徑不存在會創建這個路徑 print("--- new folder... ---") print("--- OK ---") else: print("正在保存圖片中...")
          send_new()
          def send_news(): # 計算相戀天數 inLoveDate=datetime.datetime(2018, 8, 15) # 相戀的時間 todayDate=datetime.datetime.today() inLoveDays=(todayDate - inLoveDate).days # 獲取情話 file_path=os.getcwd() + '\\' + love_word_path with open(file_path) as file: love_word=file.readlines()[inLoveDays].split(':')[1] itchat.auto_login(hotReload=True) # 熱啟動,不需要多次掃碼登錄 my_friend=itchat.search_friends(name=u'你的好友名稱') girlfriend=my_friend[0]["UserName"] print(girlfriend) message=""" 親愛的{}: 早上好,今天是你和 Koc 相戀的第 {} 天~ 今天他想對你說的話是: {} 最后也是最重要的! """.format("你的好友名稱", str(inLoveDays), love_word) itchat.send(message, toUserName=girlfriend) files=os.listdir(pic_path) file=files[inLoveDays] love_image_file="D:\\img\\" + file try: itchat.send_image(love_image_file, toUserName=girlfriend) except Exception as e: print(e)
          main()
          

          main() 函數就是我們主邏輯函數,程序運行的邏輯順序就是在這個函數里規定的。在 main() 里我首先判斷下當前路徑下是否有「love_word.txt」文件,如果有則提示相應的信息,沒有的話才去執 crawl_Love_words() 函數,去網上抓取一些情話數據。

          路遙知馬力,就算石頭心,也該被你給打動了吧!

          雖然方法不多,但是希望能幫到你們。

          喜歡小編文章的可以點個贊關注小編哦,小編每天都會給大家更新文章。

          我自己是一名從事了多年的Python老程序員,小編為大家準備了7月份新出的python編程學習資料,免費分享給大家!

          如果你也想學習Python,那么幫忙轉發一下然后再關注小編后私信“01”可以得到我整理的這些Python資料了(私信方法:點擊我頭像進我主頁有個上面有個私信按鈕)。


          主站蜘蛛池模板: 国产91大片精品一区在线观看| 精品3d动漫视频一区在线观看| 亚洲一本一道一区二区三区| 日韩精品无码一区二区中文字幕| 无码人妻一区二区三区在线水卜樱| 日韩一区二区免费视频| 色噜噜狠狠一区二区三区果冻| 亚洲一区二区免费视频| 末成年女AV片一区二区| 亚洲bt加勒比一区二区| 国产一区中文字幕在线观看| 天堂一区人妻无码| 国产亚洲一区二区三区在线观看| 国产产一区二区三区久久毛片国语 | 国产精品视频免费一区二区三区| 亚洲熟妇无码一区二区三区| av一区二区三区人妻少妇| 91国在线啪精品一区| 麻豆一区二区99久久久久| 老熟妇仑乱视频一区二区| 日韩一区二区三区四区不卡| 国产99久久精品一区二区| 日韩熟女精品一区二区三区| 国产亚洲一区二区在线观看| 中文乱码字幕高清一区二区| 国产内射在线激情一区| 亚洲Av永久无码精品一区二区 | 一区二区三区在线|日本| 无码精品黑人一区二区三区| 成人精品一区二区三区电影| 老熟女高潮一区二区三区| 97精品国产福利一区二区三区| 午夜视频在线观看一区二区 | 亚洲永久无码3D动漫一区| 濑亚美莉在线视频一区| 精品少妇ay一区二区三区| 一区二区三区免费视频观看| 性无码免费一区二区三区在线 | 波多野结衣中文一区| 亚洲一区二区三区写真| 精品国产亚洲一区二区在线观看|