根据委托单位名称查询样品信息(新三和),系统接口反馈内容变更,代码重编

import requests
from bs4 import BeautifulSoup
import pandas as pd

将委托单位名称转化成utf-8格式,并用%连接转化后16进制,导入cabr-betc报告的查询网址url中

text = “富思特新材料科技发展股份有限公司”
print(f"2025年启用的新三和系统根据委托单位名称进行查询:{text}“)
utf8_encoded_text = text.encode(‘utf-8’)
hex_representation = ‘%’.join(hex(b)[2:] for b in utf8_encoded_text)
#print(hex_representation)
url = “http://weixin.cabr-betc.com/gzsjcwx/WxMainGj/findreport?prtnum=&wtnum=&phnum=&gccode=&gcname=&wtunit=%”+hex_representation+”&wtdatee=&wtdater=&contractcode=&customerId=&xmName="
print(f"查询网址:{url}")
print(‘’)

发送 GET 请求获取网页内容

response = requests.get(url)
#print(response.text)

使用 BeautifulSoup 解析网页内容

soup = BeautifulSoup(response.text, ‘html.parser’)
#print(soup)

查找所有报告编号元素并打印

data_list = []
data = []
count = 0

boxes = soup.find_all(‘div’, class_=‘PrtInfoDiv-detail-box’)
#print(div_tags)
for box in boxes:
spans = box.find_all(‘span’)
for span in spans:
#print(span.get_text().strip())
data.append(span.get_text().strip())

        count += 1
        if count == 24:
            data_list.append(data)
            print(data[5::2])
            data = []
            count = 0

#print(data_list)

data_list列表中内容,存储到csv文件中

column_names = [“委托单位”, “报告标题”, “报告编号”, “委托日期”, “样品名称”, “规格型号”, “数量”, “检测项目”, “报告日期”, “数据状态”]
even_columns_list = [row[5::2] for row in data_list] #从第5列开始每隔2列提取数据
df = pd.DataFrame(even_columns_list, columns = column_names)
df.to_csv(‘data.csv’, index = False, encoding=‘utf-8-sig’)
#print(df) #打开CSV文件查看详细内容

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值