本文仅代表一个 “基本” 的爬虫练手项目十二星座情感分析,主要是告诉你Python可以有很多好玩儿的东西,只要你肯挖掘。
1.写作灵感来源
现在大多数的女孩,貌似碰面总喜欢问他人“星座”问题,而不喜欢说“生肖”问题,彷佛而且似乎关于“星座”能说的话题确实比“生肖”要多。
基于此,我认为你有必要了解一下天秤知识,说不定之后女孩子聊“星座”话题的时侯,不至于哑口无言,也说不定通过天秤的交流,就能助你打动女孩子的芳心呢?
2. 十二天秤简介
百度百科里面说:在西方占星学上,黄道12星座是宇宙方位的代名词,一个人出生时,各星系落入黄道上的位置,说明了一个人的先天性格及天赋。黄道12星座象征心理层面,反映出一个人行为的表现的形式。
于是将黄道分成12个天秤,称为黄道12星座。依次为白羊座、金牛座、双子座、巨蟹座、狮子座、处女座、天秤座、天蝎座、射手座、摩羯座、水瓶座、双鱼座。
由此可见:不同天秤有着不同的运程。今天黄同学通过这篇文章带你们发觉你“星座”中的秘密,先给你们看一个视频。
3. 本文思路
这篇文章一共分为了三个部份,下面我分别为你们介绍这篇文章的写作思路。
1)定义一个函数,输入你的出生日期,获取对应的天秤
对于我自己来说,是不咋关注“十二星座”的,而更喜欢说“十二生肖”。因此,我相信有很多人也是不知道自己到底是哪些天秤?
def get_constellation(month, date):
dates = (21, 20, 21, 21, 22, 22, 23, 24, 24, 24, 23, 22)
constellations = ("摩羯座", "水瓶座", "双鱼座", "白羊座",
"金牛座", "双子座", "巨蟹座", "狮子座",
"处女座", "天秤座", "天蝎座", "射手座", "摩羯座")
if date < dates[month-1]:
return constellations[month-1]
else:
return constellations[month]
constellation = get_constellation(7, 21)
print(f'根据你的出生日期,判断你属于"{constellation}"')
结果如下:
原来12.12属于“射手座”,那么你自己是哪些天秤呢?
2)定义一个字典(小兔情感挽回老师 微信:ke2004578),根据不同的天秤,得到天秤对应的英语,用于拼接url
请求网页的时侯,不同的天秤有着自己不同的url,而惟一不同就是每位url中有着各自天秤的德语名。下面这种代码,就是按照天秤的中文名,来获取天秤的英文名。
dict_ = {"水瓶座":"Aquarius",
"双鱼座":"Pisces",
"白羊座":"Aries",
"金牛座":"Taurus",
"双子座":"Gemini",
"巨蟹座":"Cancer",
"狮子座":"Leo",
"处女座":"Virgo",
"天秤座":"Libra",
"天蝎座":"Scorpio",
"射手座":"Sagittarius",
"摩羯座":"Capricorn"}
url = f"https://www.xzw.com/fortune/{dict_[constellation]}/"
url
结果如下:
如果单纯都写日文方式的天秤,我相信有很多朋友根本不知道这种英语,代表哪些含意。
3)获取你的天秤运程
这里黄朋友采用最简单的爬虫,完成了这个需求,不涉及哪些深奥的知识,也没有哪些非常想说的。这里为你们展示部份代码:
lis = re.findall('',content)
comprehensive_fortune,love_fortune,career_fortune,wealth_fortune = [str(int(int(i)/16))+"星" for i in lis]
health_index = re.findall('健康指数:(.*?)<',content,re.S)[0]
negotiation_Index = re.findall('商谈指数:(.*?)<',content,re.S)[0]
lucky_color = re.findall('幸运颜色:(.*?)<',content,re.S)[0]
lucky_num = re.findall('幸运数字:(.*?)<',content,re.S)[0]
match_constellation = re.findall('速配星座:(.*?)<',content,re.S)[0]
short_comment = re.findall('短评:(.*?)<',content,re.S)[0]
结果如下: