天天定时发送一句情话 双鱼女一般男生征服不了,征服双鱼女最直接办法( 三 )


注重一下第69剧 , 这里面有网站的链接 , 把这个一起发给女神不就露馅了么 , 现在得想办法给她删掉 。同时情话前面的编号也得删掉 。
删除特定标签
我们会查看一下数据就会发现 , 所有的链接都是在U标签里的 , 那我们可以直接在获取到div标签内容后就把u标签删掉
"删除特定标签u"[s.extract() for s in div_node('u')]删除序号
我们发现 , 序号与情话之间是用顿号分割的 , 那么我们可以将每个P标签下的内容用split分割并且取出第二个元素就好了 。
部分代码:
【天天定时发送一句情话 双鱼女一般男生征服不了,征服双鱼女最直接办法】"获取P节点内容"p_node = div_node.find_all('p')for content in p_node:"以’、‘分割 , 并且取出第2个元素"text = content.get_text.split("、",1)[1]print(text)结果:
/usr/bin/python3.7 /home/baldwin/PycharmProjects/IAmADog/spider/Spider.py将你放进我心里最重要的位置 , 专心来刻你的名字 。爱是踏破红尘望穿秋水;爱是一生一世冥冥轮回;爱你 , 我不问理由 。拽你入怀 , 予你一世相伴 , 拥你入怀 , 护你一世平安 。何止是野心 , 我预谋了一辈子的念想 , 从遇见你开始 , 不见黄土不死心 。我后来想了想 , 我不耽误你 , 还会有别人耽误你 , 那我不甘心 , 还是我来耽误你吧 。......Process finished with exit code 0nice啊 , 到这一步你已经把我们需要的情话都提取出来了!!!
封装数据备用
这样一句一句的也不好处理啊!不如把它放到list里 , 等下定时任务的时候可以用的时候取出来就好 。
部分代码:
sentenceList = list......"获取P节点内容"p_node = div_node.find_all('p')for content in p_node:"以’、‘分割 , 并且取出第2个元素"text = content.get_text.split("、", 1)[1]"追加到list尾部"sentenceList.append(text)print(sentenceList):
/usr/bin/python3.7 /home/baldwin/PycharmProjects/IAmADog/spider/Spider.py['将你放进我心里最重要的位置 , 专心来刻你的名字 。', '爱是踏破红尘望穿秋水;爱是一生一世冥冥轮回;爱你 , 我不问理由 。', '拽你入怀 , 予你一世相伴 , 拥你入怀 , 护你一世平安 。', '何止是野心 , 我预谋了一辈子的念想 , 从遇见你开始 , 不见黄土不死心 。', ......]Process finished with exit code 05、封装(爬虫代码最终)
爬虫是做好了 , 但是总觉得乖乖的 , 我等下还得在其他地方用 , 不如这里以面向对象的思想把爬虫封装一下 。
import urllib.requestfrom bs4 import BeautifulSoupimport chardetdef __getHtml(url):"""私有方法:获取网页html文本资源:param url: 网页链接:return: 网页文本资源"""html = urllib.request.urlopen(url).readcharset = chardet.detect(html).get("encoding")htmlText = html.decode(charset, errors='ignore')return htmlTextdef __sloveHtml(htmlText):"""私有方法:解析HtmlText:param htmlText: 传入的资源"""sentenceList = listsoup = BeautifulSoup(htmlText, "html.parser")"获取content节点的内容"div_node = soup.find('div', class_='content')"删除特定标签u"[s.extract() for s in div_node('u')]"获取P节点内容"p_node = div_node.find_all('p')for content in p_node:"以’、‘分割 , 并且取出第2个元素"text = content.get_text.split("、", 1)[1]"追加到list尾部"sentenceList.append(text)return sentenceListdef getSentenceList(url):"""Spider提供的公用方法 , 提供情话list:param url: 获取情话的地址:return: 情话list"""return __sloveHtml(__getHtml(url))爬虫总结
这一部分主要用到的类库有:BeautifulSoup , urllib , chardet 。
主要思想:封装
手机短信发送发送
本来想用微信或者QQ发送来着 , 但是时隔两年 , qqbot、itchat、wxpy等第三方库都失效了 , 没办法就来用手机短信发送好了 。
1. Twilio
Twilio是一个做成开放插件的电话跟踪服务(call-tracking service)
Twilio公司致力于帮助开发者在其应用里融入电话、短信等功能 , 该公司周二又推出了一项称为Twilio Client的新服务 , 可帮助开发者整合灵活而低成本的网络电话(VoIP)功能 。
VoIP即Skype和谷歌电话等服务使用的技术 , 要提供VoIP服务通常需要预备相应的基础设备 , 而Twilio Client免除了开发者的这一麻烦 , 可让他们便捷地在应用里加入网络电话元素 。