python打分号吗_Python 姓名评分

本文介绍了使用Python脚本解析姓名并进行命理评分的方法,通过请求网页接口获取五格数理和八字五行的分数,并提供了读取txt文件批量处理姓名的示例。
摘要由CSDN通过智能技术生成

近日,某某领导初学易经,沉迷风水,每每闲暇之时,便借会议之名,为下属逐一算卦。每每到欣然之处,便高谈论阔,从太极阴阳五行谈至平衡宇宙、计算机二进制。。。吾不由感哉,此乃神人也。(薛之谦语气:神经病啊)

请描述一下你当时的心情:

我觉得我当时的心情是很激动的,很难用语言描述,举个例子来说吧,那种激动就像是成千上万的草泥马在心中奔腾一样

今日早起,刷知乎,阅得一文,文章始末,细述python解析姓名命理之法,甚是有趣,故亲验之,记录于此。

代码:

import requests

from lxml import etree

url = "http://m.life.httpcn.com/m/xingming/"

headers = {

'accept': "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",

'accept-encoding': "gzip, deflate",

'accept-language': "zh-CN,zh;q=0.8",

'content-type': "application/x-www-form-urlencoded",

'host': "m.life.httpcn.com",

'origin': "http://m.life.httpcn.com",

'referer': "http://m.life.httpcn.com/xingming/",

'upgrade-insecure-requests': "1",

'user-agent': "Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B143 Safari/601.1"

}

#定义核心方法

def nameGrade(lastName,firstName,sex,year,month,day,hour,minute):

params = {}

params['act'] = 'submit' #默认值

params['data_type'] = '0' #日期类型,0表示公历,1表示农历

params['RenYue'] = '0' #默认为0

params['year'] = year #输入出生年份

params['month'] = month #输入出生月份

params['day'] = day #输入出生日

params['hour'] = hour #输入出生时

params['minute'] = minute # 输入出生分

params['zty'] = '0' #真太阳时,默认不使用为0

params['wxxy'] = '0' #喜用五行,0表示自动分析,1表示自定喜用神

params['xing'] = lastName #输入姓

params['ming'] = firstName #输入名

params['sex'] = sex #性别,0表示女孩,1表示男孩

params['isbz'] = '1' #默认值为1

response = requests.request("POST",url,data=params,headers=headers)

response.encoding = 'UTF-8'

selector = etree.HTML(response.text)

#解析得到"五格数理"分数

wuge_score = selector.xpath('//div[@class="mui-collapse-content hc-cha-content"]/div[1]/div/text()')

#解析得到"八字五行"分数

bazi_score = selector.xpath('//div[@class="mui-collapse-content hc-cha-content"]/div[4]/div/text()')

print("姓名:" + str(lastName) + str(firstName) + '\t' + "五格数理分数:" + str(wuge_score) + '\t' + "八字五行分数:" + str(bazi_score))

#读取txt文件,循环调用

file = open("nameList.txt")

list = []

while 1:

line = file.readline()

if not line:

break

pass

# print(line.split(';'))

lineconten = line.split(';')

nameGrade(lineconten[0],lineconten[1],lineconten[2],lineconten[3],lineconten[4],lineconten[5],lineconten[6],lineconten[7])

此时只需要制作一个格式如下的txt文件即可:

【姓】;【名】;【男=1,女=0】;【年】;【月】;【日】;【时】;【分】

如下:

张;无忌;1;1990;03;22;10;12;

杨;过;1;1980;03;22;10;12;

张;三丰;1;1981;03;22;10;12;

黄;药师;1;1990;05;24;11;12;

洪;七公;1;1992;03;27;13;12;

欧;阳锋;1;1993;03;25;15;12;

周;芷若;0;1989;07;22;10;12;

python3 babyName.py 执行程序,得到:

执行程序得到

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值