我正在尝试使用Rest Asure
将从API响应中获取的数据存储到CSV文件中。这就是我的代码的样子:
public void Test_01() throws Exception {
Response response = RestAssured.given() // enter valid credentials
.get("https://gorest.co.in/public-api/users")
.then()
.extract()
.response();
String data = response.jsonPath().get("data");
System.out.println(response.asString().getClass());
try
{
JsonNode jsonTree = new ObjectMapper().readTree(data);
CsvSchema.Builder csvSchemaBuilder = CsvSchema.builder();
JsonNode firstObject = jsonTree.elements().next();
firstObject.fieldNames().forEachRemaining(fieldName -> {csvSchemaBuilder.addColumn(fieldName);} );
CsvSchema csvSchema = csvSchemaBuilder.build().withHeader();
CsvMapper csvMapper = new CsvMapper();
csvMapper.writerFor(JsonNode.class)
.with(csvSchema)
.writeValue(new File("src/main/resources/lmsget.csv"), jsonTree);
} catch(Exception ex)
{
throw ex;
}
}
当我试图执行这个测试时,我得到一个错误:Schema指定要写入头行;但不包含列名
。也许,这是因为JSON的格式,它看起来像:
"code": 200,
"meta": {
"pagination": {
"total": 2610,
"pages": 131,
"page": 1,
"limit": 20
}
之后,会有一个包含对象的数组data
。我只想只存储这些数据。我还尝试了一些作为JsonPath
提取响应的更改:
Object data = response.JsonPath.get("data");
但是当我在JsonNode jsonTree=new ObjectMapper()中使用它时。readTree(数据)
我收到错误信息:
com.fasterxml.jackson.core.JsonParseException: Unexpected character ('i' (code 105)): was expecting double-quote to start field name
at [Source: (String)"[{id=2583, name=Aryan Shah, email=shah_aryan@oreilly.biz, gender=male, status=inactive},
解决方案:
数据
,不放心String res = given()
.get("https://gorest.co.in/public-api/users")
.asString();
try {
JsonNode jsonTree = new ObjectMapper().readTree(res).get("data");
...
}
想要知道更多东西吗?当你需要从表中查找某些值时,可以使用冗长的 case 语句或 selectors 实现,但更整洁的方式是使用 extlookup 函数实现。 在 puppetmaster 上可以使用 extlookup 函数查询外部的 CSV 文件,并返回匹配的数据片段。 将所有数据组织到一个单一的文件并将它从 Puppet 配置清单中分离出来, 可以使维护工作变得更简单,也便于与其他人分享:
我试图从csv文件导入数据。但它不起作用。有人能帮我吗? 我的简历文件: 用户名、密码usr1、pswd1 usr2、pswd2、usr3、pswd 3。。。。。 我的CSV数据集配置: 文件名:D:\Jmeter\Data\Login。csv变量名称:用户名、密码是否允许引用数据?:EOF上的真正回收?:错误EOF?上的停止线程:真的 但在请求正文中,用户名和密码没有反映出来 POST 数据:
我用的是Oracle 10g,SQL Developer我想知道有没有办法从CSV文件导入数据,其中字段用','分隔,行用' \n '结束使用SQL查询我尝试了这个查询 < code >将文件“C:/tmp.csv”中的数据加载到表CSVTEST2字段终止于“,”行终止于“\n”忽略1行(ID,FIRSTNAME,LASTNAME,birth date); 但是它不起作用,我总是从sql开发人员那
问题内容: 我有以下结构的csv文件: 使用以下MySQL函数如何导入MySQL表的第一和第三列: 我为我的英语道歉! 提前致谢 ! 问题答案: 您可以指定列,并将不需要的列标记为“ @dummy”。 替换,并且只要你喜欢。要设置不在数据文件中的其他列,您可以这样做: 作为进一步的参考,我建议您看一下MySQL参考。
问题内容: 我想将csv文件导入到mysql中。 http://www.tech- recipes.com/rx/2345/import_csv_file_direct_into_mysql/ 但是csv中的列名称与数据库表中的列名称不同,我该怎么办?我想以编程方式来做。 问题答案: 您可以创建一个脚本来解析您的csv文件并将数据放入db。 就像是:
Python是如何将CSV文件读入pandas数据帧的(我可以使用它进行统计操作,可以有不同类型的列,等等)? 我的CSV文件有以下内容: 在R中,我们将使用以下方法读取此文件: 这将返回一个R数据。框架: 有没有类似python的方法来获得相同的功能?