Skip to content

Commit 1a5ea6a

Browse files
author
黄悦麒
authored
Merge pull request #1 from Hyq0719/feature/hyq/2022/01/init
Feature/hyq/2022/01/init
2 parents 9a929da + 59438be commit 1a5ea6a

File tree

338 files changed

+23620
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

338 files changed

+23620
-0
lines changed

.gitignore

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
/target/
2+
!.mvn/wrapper/maven-wrapper.jar
3+
4+
### STS ###
5+
.apt_generated
6+
.classpath
7+
.factorypath
8+
.project
9+
.settings
10+
.springBeans
11+
.sts4-cache
12+
13+
### IntelliJ IDEA ###
14+
.idea
15+
*.iws
16+
*.iml
17+
*.ipr
18+
19+
### NetBeans ###
20+
/nbproject/private/
21+
/build/
22+
/nbbuild/
23+
/dist/
24+
/nbdist/
25+
/.nb-gradle/

README.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
## Marketing API Java SDKs
2+
[![License](https://camo.githubusercontent.com/2a2157c971b7ae1deb8eb095799440551c33dcf61ea3d965d86b496a5a65df55/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6963656e73652d417061636865253230322e302d626c75652e737667)](https://opensource.org/licenses/Apache-2.0) ![使用IntelliJ IDEA开发维护](https://camo.githubusercontent.com/5fa4dc7ff49e4a518c047200657e42382acaf0a612325e9fb560cd909d4b8902/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f496e74656c6c694a253230494445412d2545362538462539302545342542452539422545362539342541462545362538432538312d626c75652e737667)
3+
4+
Marketing API Java SDKs 旨在对国内主流的Marketing API进行封装,帮助开发者快速搭建广告投放管理系统。 目前已完成了作者常用的Marketing API,如腾讯广告、巨量引擎和磁力引擎等。未来还会为更多Marketing API厂商进行封装,给开发者更好的使用体验,预计在2-3月发布第一个release版本。
5+
6+
7+
### Maven 引用方式(待发布)
8+
9+
```xml
10+
<dependency>
11+
<groupId>com.github.hyq0719</groupId>
12+
<artifactId>(不同模块参考下文)</artifactId>
13+
<version>1.0.0-SNAPSHOT</version>
14+
</dependency>
15+
```
16+
17+
- [腾讯广告](https://developers.e.qq.com/docs/start?version=1.3&_preview=1)`marketing-api-tencent`
18+
- [巨量引擎](https://open.oceanengine.com/doc/index.html?key=ad&type=api&id=1696710497745920)`marketing-api-oceanengine`
19+
- [磁力引擎](https://developers.e.kuaishou.com/docs/dsp/0.1)`marketing-api-kuaishou`
20+
- [vivo](https://open-ad.vivo.com.cn/doc/index?id=162)`marketing-api-vivo`
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3+
xmlns="http://maven.apache.org/POM/4.0.0"
4+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5+
<parent>
6+
<groupId>io.github.hyq0719</groupId>
7+
<artifactId>marketing-api-generators</artifactId>
8+
<version>1.0.0-SNAPSHOT</version>
9+
</parent>
10+
<modelVersion>4.0.0</modelVersion>
11+
12+
<artifactId>marketing-api-generator-oceanengine</artifactId>
13+
<name>Marketing API - Code Generator for Ocean Engine</name>
14+
<description>Marketing API 类代码生成器 巨量引擎开放平台</description>
15+
16+
<properties>
17+
<maven.compiler.source>${java.version}</maven.compiler.source>
18+
<maven.compiler.target>${java.version}</maven.compiler.target>
19+
</properties>
20+
21+
</project>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
package com.hyq0719.mktapi.generator.oceanengine;
2+
3+
import com.google.gson.Gson;
4+
import com.hyq0719.mktapi.generator.oceanengine.entity.BaseEntity;
5+
import com.hyq0719.mktapi.generator.oceanengine.entity.CrawlerResult;
6+
import com.hyq0719.mktapi.generator.oceanengine.entity.SingleFileEntity;
7+
import com.hyq0719.mktapi.generator.oceanengine.handler.CodeGenerator;
8+
import com.hyq0719.mktapi.generator.oceanengine.handler.CrawlerHandler;
9+
import com.hyq0719.mktapi.generator.oceanengine.handler.EntityTableHandler;
10+
import org.openqa.selenium.chrome.ChromeDriver;
11+
12+
import java.util.List;
13+
import java.util.Map;
14+
15+
public class OceanEngineGenerator {
16+
private static final String URL_PREFIX = "https://ad.oceanengine.com/open_api/2/";
17+
18+
public static void genRequestAndResponse(String url) {
19+
ChromeDriver chromeDriver = CrawlerHandler.crawler(url);
20+
CrawlerResult crawlerResult = EntityTableHandler.handleRequestAndResponse(chromeDriver, URL_PREFIX);
21+
List<SingleFileEntity> singleFileList = CodeGenerator.getSingleFileList(crawlerResult);
22+
System.out.println(new Gson().toJson(singleFileList));
23+
CodeGenerator.generateCode(singleFileList);
24+
chromeDriver.close();
25+
}
26+
27+
public static void genByTableLocation(String url, String className, int tableLocation) {
28+
ChromeDriver chromeDriver = CrawlerHandler.crawler(url);
29+
Map<String, List<BaseEntity>> map = EntityTableHandler.handleByLocation(chromeDriver, className, tableLocation);
30+
System.out.println(new Gson().toJson(map));
31+
List<SingleFileEntity> singleFileList = CodeGenerator.getSingleFileList(map, className);
32+
CodeGenerator.generateCode(singleFileList);
33+
}
34+
35+
public static void main(String[] args) {
36+
String url = "https://open.oceanengine.com/doc/index.html?key=ad&type=api&id=1696710572836879#item-link-%"
37+
+ "E5%9F%BA%E7%A1%80%E5%88%9B%E6%84%8F%E4%BF%A1%E6%81%AF";
38+
genRequestAndResponse(url);
39+
// genByTableLocation(url, "BaseCreativeStruct", 4);
40+
}
41+
}

0 commit comments

Comments
 (0)