信用中国 获取某公司的所有信息
不过该网站容易被限制ip
而且服务器性能也不好 经常出现各种bug
新手要耐心尝试
信用中国网址:
url = “https://www.creditchina.gov.cn/api/credit_info_search?&templateId=&pageSize=10”
需要多层请求爬取
代码有点长 但是代码简单 耐心看能看懂
写博文时 没有进行精简代码!
代码如下:
import requests,json,re,math
proxy = {
"HTTP": "113.3.152.88:8118",
"HTTPS": "219.234.5.128:3128",
}
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36',
}
url = "https://www.creditchina.gov.cn/api/credit_info_search?&templateId=&pageSize=10"
keyword = input("输入:")
data = {
"keyword": keyword,
"page": 1,
}
response = requests.get(url=url,params=data,headers=headers, proxies=proxy)
# print(response.url)
json_data=response.content.decode("utf-8")
total=re.compile(r'totalCount":(\d*?),')
total=total.findall(json_data)
name=re.compile(r'{"name":"(.*?)"',re.M)
name=name.findall(json_data)
encryStr=re.compile(r'"encryStr":"([\w\W]*?)"',re.M)
encryStr=encryStr.findall(json_data)
if total == []:
print(total)
print("发生错误,获取不到数据")
quit()
print("---------开始获取公司信息---------")
print()
for n in range(math.ceil(int(total[0])/10)):
for k,i in zip(name,encryStr):
encry=i[0:-2]
company=k
print("---------开始获取 " + company+" 公司信息---------")
#公司信息
url1="https://www.creditchina.gov.cn/api/credit_info_detail?encryStr=%s"%encry
response = requests.get(url=url1, params=data, headers=headers, proxies=proxy)
hotel_data=response.content.decode("utf-8")
try:
#公司名称 gs_name
gs_name=re.findall(r'"entName":"(.*?)"', hotel_data)
#统一社会信用代码 xinyong
xinyong=re.findall(r'"creditCode":"(.*?)"', hotel_data)
#地址 dizhi
dizhi=re.findall(r'"dom":"(.*?)"', hotel_data)
#工商注册号 zhuce_id
zhuce_id = re.findall(r'"regno":"(.*?)"', hotel_data)
#法人信息 faren
faren=re.findall(r'"legalPerson":"(.*?)"', hotel_data)
#成立日期 chengli
chengli=re.findall(r'"esdate":"(.*?)"', hotel_data)
#企业类型 type
type=re.findall(r'"enttype":"(.*?)"', hotel_data)
#登记机关: dengji
dengji=re.findall(r'"regorg":"(.*?)"', hotel_data)
print('公司名称: '+gs_name[0])
print('统一社会信用代码: '+xinyong[0])
print('登记机关: '+dengji[0])
print('企业类型: '+type[0])
print('成立日期: '+chengli[0])
print('法人信息: '+faren[0])
print('工商注册号: '+zhuce_id[0])
print('地址: '+dizhi[0