首页 > 其他分享 >国家水稻数据中心数据获取

国家水稻数据中心数据获取

时间:2023-10-03 23:03:56浏览次数:44  
标签:xpath 数据中心 水稻 get text 获取 td rice data

import requests
import parsel
import time
import pandas as pd


def get_rice_data(page=1):
    start = page
    url = f"https://www.ricedata.cn/variety/identified/nation_{start}.htm"
    headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36"
    }
    res = requests.get(url, headers=headers)
    # 获取网页编码格式并设置
    res.encoding = res.apparent_encoding
    html = parsel.Selector(res.text)
    # 获取父标签
    datas = html.xpath('/html/body/table[2]/tr')

    rice_data = []
    rice_header = ['序号', '品种名称', '亲本来源', '类型', '原产地/选育单位', '审定编号']
    for data in datas[1:]:
        rice_num = data.xpath('td[1]/text()').get()
        rice_category = data.xpath('td[2]/a/text()').get()
        rice_source = data.xpath('td[3]/text()').get()
        rice_type = data.xpath('td[4]/text()').get()
        rice_country = data.xpath('td[5]/text()').get()
        rice_ID = data.xpath('td[6]/text()').get()
        rice_data.append([
            rice_num,
            rice_category,
            rice_source,
            rice_type,
            rice_country,
            rice_ID,
        ])
    rice_data = pd.DataFrame(columns=rice_header, data=rice_data)
    return rice_data


if __name__ == "__main__":
    rice_datas = []
    for l in range(1, 100):
        time.sleep(1)
        print(f"正在获取第{l}页数据")
        data = get_rice_data(l)
        rice_datas.append(data)
    rice_info = pd.concat(rice_datas, ignore_index=True)
    rice_info.to_csv('rice_data.csv', mode='w', index=False, sep=',')
    print("保存成功!")

标签:xpath,数据中心,水稻,get,text,获取,td,rice,data
From: https://www.cnblogs.com/yujie168/p/17741778.html

相关文章

  • 获取url后面的参数
    方式一finalStringqueryString=request.getQueryString();System.out.println(queryString);//解码System.out.println(URLDecoder.decode(queryString,StandardCharsets.UTF_8));测试:pageSize=25&pageNum=1&sort%5B%27id%27%5D=desc&sort%5B%27name%27%5D=......
  • 如何获取 C#程序 内核态线程栈
    一:背景1.讲故事在这么多的案例分析中,往往会发现一些案例是卡死在线程的内核态栈上,但拿过来的dump都是用户态模式下,所以无法看到内核态栈,这就比较麻烦,需要让朋友通过其他方式生成一个蓝屏的dump,这里我们简单汇总下。二:如何生成内核态dump1.案例代码为了方便演示,来一段简单的......
  • c/c++获取uuid
    c/c++标准库中没有自带的uuid工具函数/类,可以使用三方库libuuid,boost,或者手工实现,如下:[zjh@hs-10-20-xxxlib]$sudoyuminstalllibuuid-devel[sudo]passwordforzjh:Loadedplugins:fastestmirror,langpacksLoadingmirrorspeedsfromcachedhostfilebase......
  • NO.6 Linux 获取文件属性
    1/*2用于获取文件的属性和元数据信息,并输出到终端。3程序接受一个参数作为路径名,通过lstat函数获取指定文件的属性信息,并使用printf函数输出到终端。4注释对代码进行了简要解释,帮助理解各个部分的功能。5*/6#include<sys/types.h>7#include<sys/stat.h>8......
  • 视频监控/安防监控EasyCVR平台如何调取登录接口获取token?
    安防视频监控平台EasyCVR是一个具有强大拓展性、灵活的视频能力和轻便部署的平台。它支持多种主流标准协议,包括国标GB28181、RTSP/Onvif、RTMP等,还可以支持厂家的私有协议和SDK接入,例如海康Ehome、海大宇等设备的SDK。该平台不仅拥有传统安防视频监控的功能,还具备接入AI智能分析的......
  • AssetDatabase.LoadAssetAtPath 获取FBX资源空指针问题
    问题一 LoadAssetAtPath返回空publicclassProcessModel:AssetPostprocessor{privatevoidOnPostprocessModel(GameObjectinput){if(input.name!="Enemy2b")return;//取得导入模型相关信息ModelImporterimporter=ass......
  • python 获取城市所属省份
    获取城市所属省份defgetProvince(cityValue):area_data={'北京':['北京市','朝阳区','海淀区','通州区','房山区','丰台区','昌平区','大兴区','顺义区','西城区','延......
  • springmvc 获取项目中的所有请求路径
    springboot/springmvc获取项目中的所有请求路径1.编写业务代码@Autowired privateWebApplicationContextapplicationContext;@GetMapping("/getAllURL") publicRestfulResultgetAllURL(){ //获取springmvc处理器映射器组件对象RequestMappingHandlerMapping无法......
  • 获取个人中心的信息时需要带上cookie
    importurllib.requestimporturllib.parseheaders={'User-Agent':'Mozilla/5.0(WindowsNT10.0;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/96.0.4664.110Safari/537.36Edg/96.0.1054.62','cookie':&#......
  • python获取年月日时分秒毫秒
     fromdatetimeimportdatetime#获取当前时间now=datetime.now()#获取年、月、日、时、分、秒和毫秒year=now.yearmonth=now.monthday=now.dayhour=now.hourminute=now.minutesecond=now.secondmillisecond=now.microsecond//1000#毫秒需......