随着社会信用体系的不断完善,失信被执行人名单成为了公众关注的焦点之一。通过互联网公开的失信被执行人信息,可以帮助公众更好地了解个人或企业的信用状况。Python作为一种强大且易用的编程语言,提供了丰富的库和工具,使得实现网络爬虫变得相对简单。本文将介绍如何使用Python爬虫实现全国失信被执行人名单的查询功能,并提供完整的示例代码。
本文实例讲述了Python爬虫实现全国失信被执行人名单查询功能。分享给大家供大家参考,具体如下:
一、需求说明
利用百度的接口,实现一个全国失信被执行人名单查询功能。输入姓名,查询是否在全国失信被执行人名单中。

二、python实现
版本1:
# -*- coding:utf-8*-
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
import time
import requests
time1=time.time()
import pandas as pd
import json
iname=[]
icard=[]
def person_executed(name):
for i in range(0,30):
try:
url="https://sp0.baidu.com/8aQDcjqpAAV3otqbppnN2DJv/api.php?resource_id=6899" \
"&query=%E5%A4%B1%E4%BF%A1%E8%A2%AB%E6%89%A7%E8%A1%8C%E4%BA%BA%E5%90%8D%E5%8D%95" \
"&cardNum=&" \
"iname="+str(name)+ \
"&areaName=" \
"&pn="+str(i*10)+ \
"&rn=10" \
"&ie=utf-8&oe=utf-8&format=json"
html=requests.get(url).content
html_json=json.loads(html)
html_data=html_json['data']
for each in html_data:
k=each['result']
for each in k:
print each['iname'],each['cardNum']
iname.append(each['iname'])
icard.append(each['cardNum'])
except:
pass
if __name__ == '__main__':
name="郭**"
person_executed(name)
print len(iname)
#####################将数据组织成数据框###########################
data=pd.DataFrame({"name":iname,"IDCard":icard})
#################数据框去重####################################
data1=data.drop_duplicates()
print data1
print len(data1)
#########################写出数据到excel#########################################
pd.DataFrame.to_excel(data1,"F:\\iname_icard_query.xlsx",header=True,encoding='gbk',index=False)
time2=time.time()
print u'ok,爬虫结束!'
print u'总共耗时:'+str(time2-time1)+'s'三、效果展示
"D:\Program Files\Python27\python.exe" D:/PycharmProjects/learn2017/全国失信被执行人查询.py
郭** 34122319790****5119
郭** 32032119881****2419
郭** 32032119881****2419
3
IDCard name
0 34122319790****5119 郭**
1 32032119881****2419 郭**
2
ok,爬虫结束!
总共耗时:7.72000002861s
Process finished with exit code 0
版本2:
# -*- coding:utf-8*-
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
import time
import requests
time1=time.time()
import pandas as pd
import json
iname=[]
icard=[]
courtName=[]
areaName=[]
caseCode=[]
duty=[]
performance=[]
disruptTypeName=[]
publishDate=[]
def person_executed(name):
for i in range(0,30):
try:
url="https://sp0.baidu.com/8aQDcjqpAAV3otqbppnN2DJv/api.php?resource_id=6899" \
"&query=%E5%A4%B1%E4%BF%A1%E8%A2%AB%E6%89%A7%E8%A1%8C%E4%BA%BA%E5%90%8D%E5%8D%95" \
"&cardNum=&" \
"iname="+str(name)+ \
"&areaName=" \
"&pn="+str(i*10)+ \
"&rn=10" \
"&ie=utf-8&oe=utf-8&format=json"
html=requests.get(url).content
html_json=json.loads(html)
html_data=html_json['data']
for each in html_data:
k=each['result']
for each in k:
print each['iname'],each['cardNum'],each['courtName'],each['areaName'],each['caseCode'],each['duty'],each['performance'],each['disruptTypeName'],each['publishDate']
iname.append(each['iname'])
icard.append(each['cardNum'])
courtName.append(each['courtName'])
areaName.append(each['areaName'])
caseCode.append(each['caseCode'])
duty.append(each['duty'])
performance.append(each['performance'])
disruptTypeName.append(each['disruptTypeName'])
publishDate.append(each['publishDate'])
except:
pass
if __name__ == '__main__':
name="郭**"
person_executed(name)
print len(iname)
#####################将数据组织成数据框###########################
# data=pd.DataFrame({"name":iname,"IDCard":icard})
detail_data=pd.DataFrame({"name":iname,"IDCard":icard,"courtName":courtName,"areaName":areaName,"caseCode":caseCode,"duty":duty,"performance":performance,\
"disruptTypeName":disruptTypeName,"publishDate":publishDate})
#################数据框去重####################################
# data1=data.drop_duplicates()
# print data1
# print len(data1)
detail_data1=detail_data.drop_duplicates()
# print detail_data1
# print len(detail_data1)
#########################写出数据到excel#########################################
pd.DataFrame.to_excel(detail_data1,"F:\\iname_icard_query.xlsx",header=True,encoding='gbk',index=False)
time2=time.time()
print u'ok,爬虫结束!'
print u'总共耗时:'+str(time2-time1)+'s'总结
通过本文的详细讲解,我们学习了如何使用Python爬虫实现全国失信被执行人名单的查询功能。我们首先介绍了所需的库和工具,然后逐步构建了爬虫程序,最后展示了如何使用该程序查询失信被执行人名单。希望本文的内容能够帮助大家更好地理解和应用Python爬虫技术,提升数据采集和分析的能力。同时,我们也提醒大家在使用爬虫技术时,务必遵守相关法律法规和网站的使用条款,确保合法合规地进行数据采集。
本文来源于#开心果汁,由@蜜芽 整理发布。如若内容造成侵权/违法违规/事实不符,请联系本站客服处理!
该文章观点仅代表作者本人,不代表本站立场。本站不承担相关法律责任。
如若转载,请注明出处:https://www.zhanid.com/biancheng/2384.html




















