dorkgen/README.md

97 lines
2.5 KiB
Markdown
Raw Normal View History

2020-02-24 19:34:02 +00:00
# Dorkgen
2020-02-24 10:34:35 +00:00
2020-02-24 19:53:31 +00:00
<div align="left">
2020-02-24 19:49:54 +00:00
<a href="https://godoc.org/github.com/sundowndev/dorkgen">
<img src="https://godoc.org/github.com/sundowndev/dorkgen?status.svg" alt="GoDoc">
</a>
2020-02-24 20:44:50 +00:00
<a href="https://github.com/sundowndev/dorkgen/actions">
<img src="https://img.shields.io/endpoint.svg?url=https://actions-badge.atrox.dev/sundowndev/dorkgen/badge?ref=master" alt="build status" />
</a>
2020-02-24 19:34:02 +00:00
<a href="https://goreportcard.com/report/github.com/sundowndev/dorkgen">
<img src="https://goreportcard.com/badge/github.com/sundowndev/dorkgen" alt="go report" />
</a>
<a href="https://codeclimate.com/github/sundowndev/dorkgen/maintainability">
2020-02-24 19:53:31 +00:00
<img src="https://api.codeclimate.com/v1/badges/e827d7cc994c6519d319/maintainability" />
2020-02-24 19:34:02 +00:00
</a>
2020-02-26 11:22:43 +00:00
<a href="https://codecov.io/gh/sundowndev/dorkgen">
<img src="https://codecov.io/gh/sundowndev/dorkgen/branch/master/graph/badge.svg" />
</a>
2020-02-24 19:34:02 +00:00
<a href="https://github.com/sundowndev/dorkgen/releases">
<img src="https://img.shields.io/github/release/SundownDEV/dorkgen.svg" alt="Latest version" />
</a>
</div>
Dorkgen is a dork request generator for popular search engines such as Google, DuckDuckGo and Bing. [Learn more about Google Hacking](https://en.wikipedia.org/wiki/Google_hacking).
## Install
```bash
go get github.com/sundowndev/dorkgen
```
## Usage
2020-02-25 09:39:46 +00:00
[Try it in the Go playground](https://play.golang.org/p/ck_hEoX8cTK)
#### Get started
2020-02-24 19:34:02 +00:00
```go
package main
2020-02-25 09:03:38 +00:00
import "github.com/sundowndev/dorkgen"
2020-02-24 19:34:02 +00:00
func main() {
2020-02-25 09:03:38 +00:00
dork := &dorkgen.GoogleSearch{}
2020-02-24 21:06:34 +00:00
// dork := &dorkgen.DuckDuckGo{}
// dork := &dorkgen.Bing{}
2020-02-25 09:39:46 +00:00
dork.Site("example.com").Intext("text").ToString()
// returns: site:example.com "text"
}
```
#### Operators
2020-02-24 19:34:02 +00:00
2020-02-25 09:39:46 +00:00
```go
dork.Site("facebook.com").Or().Site("twitter.com").ToString()
// returns: site:facebook.com OR site:twitter.com
2020-02-24 19:34:02 +00:00
2020-02-25 09:39:46 +00:00
dork.Intext("facebook").And().Intext("twitter").ToString()
// returns: "facebook" AND "twitter"
2020-02-24 19:34:02 +00:00
```
2020-02-25 09:39:46 +00:00
#### Exclude results
2020-02-24 19:34:02 +00:00
```go
2020-02-25 09:39:46 +00:00
dork.
Exclude((&dorkgen.GoogleSearch{}).
Site("example.com").
ToString()).
Site("example.*").
Or().
Intext("text")
// returns: -site:example.com site:example.* OR "text"
```
#### Group tags along with operators
```go
dork.
Group((&dorkgen.GoogleSearch{}).
Site("facebook.com").
Or().
Site("twitter.com").
ToString()).
Intext("wtf").
ToString()
// returns: (site:facebook.com OR site:twitter.com) "wtf"
2020-02-24 19:34:02 +00:00
}
```
2020-02-25 09:39:46 +00:00
#### URL conversion
```go
dork.Site("facebook.*").Exclude("site:facebook.com").ToURL()
// returns: https://www.google.com/search?q=site%3A"facebook.*"+-site%3Afacebook.com
```