https://github.com/jonaskahn/user-agents
A lightweight Kotlin library to generate random user-agents for JVM applications, enhancing anonymity in web requests.
https://github.com/jonaskahn/user-agents
java jvm kotlin scraping user-agent user-agents web-scraping
Last synced: 29 days ago
JSON representation
A lightweight Kotlin library to generate random user-agents for JVM applications, enhancing anonymity in web requests.
- Host: GitHub
- URL: https://github.com/jonaskahn/user-agents
- Owner: jonaskahn
- License: unlicense
- Created: 2023-09-19T07:51:33.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-11-19T17:06:17.000Z (over 1 year ago)
- Last Synced: 2026-01-17T05:10:31.074Z (5 months ago)
- Topics: java, jvm, kotlin, scraping, user-agent, user-agents, web-scraping
- Language: Kotlin
- Homepage: https://central.sonatype.com/artifact/one.ifelse.tools/user-agents/versions
- Size: 702 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# user-agents
Small library random user-agent for jvm - Written in Kotlin
## update maven
```maven
one.ifelse.tools
user-agents
0.1.2
```
---
## Note
> Since v0.1.0, I switched to the new implementation, seed data now from [js version of
`user-gents`](https://www.npmjs.com/package/user-agents), but not any lines of
> code.
## Sample
```kotlin
// Kotlin example
fun main() {
RandomUserAgent.random()
// platform
RandomUserAgent.random { it.platform == "Win32" }
RandomUserAgent.random { it.platform == "MacIntel" }
// device type
RandomUserAgent.random { it.deviceCategory == "desktop" }
RandomUserAgent.random { it.deviceCategory == "mobile" }
RandomUserAgent.random { it.deviceCategory == "tablet" }
// browser type
RandomUserAgent.random { it.userAgent.contains("Safari", true) }
// multiple filter
RandomUserAgent.random({ it.platform == "Win32" }, { it.userAgent.contains("Mozilla", true) })
}
```
```java
// Java example
public class Main {
public static void main(String[] args) {
RandomUserAgent.INSTANCE.random();
// platform
RandomUserAgent.INSTANCE.random(userAgent -> Objects.equals(userAgent.getPlatform(), "Win32"));
RandomUserAgent.INSTANCE.random(userAgent -> Objects.equals(userAgent.getPlatform(), "MacIntel"));
// device type
RandomUserAgent.INSTANCE.random(userAgent -> Objects.equals(userAgent.getDeviceCategory(), "desktop"));
RandomUserAgent.INSTANCE.random(userAgent -> Objects.equals(userAgent.getDeviceCategory(), "mobile"));
RandomUserAgent.INSTANCE.random(userAgent -> Objects.equals(userAgent.getDeviceCategory(), "tablet"));
// browser type
RandomUserAgent.INSTANCE.random(userAgent -> userAgent.getUserAgent().contains("Safari"));
// multiple filter
RandomUserAgent.INSTANCE.random(
userAgent -> Objects.equals(userAgent.getDeviceCategory(), "mobile"),
userAgent -> userAgent.getUserAgent().contains("Mozilla")
);
}
}
```