duckduckgo_search 0.2.0
duckduckgo_search: ^0.2.0 copied to clipboard
DuckDuckGo Search API for Dart
DuckDuckGo Search #
A Dart package for DuckDuckGo search API. Supports text, image, video, and news search with filters.
Features #
- Text search
- Image search with filters (size, color, type, layout, license)
- Video search with filters (resolution, duration, license)
- News search with filters (time limit, region)
- Search suggestions and instant answers
- Rate limit protection and error handling
Usage #
final search = DuckDuckGoSearch();
// Text search
final results = await search.text('dart programming');
// Image search
final images = await search.images('nature',
size: 'Wallpaper',
color: 'Green',
layout: 'Wide'
);
// Video search
final videos = await search.videos('tutorials',
resolution: 'high',
duration: 'long'
);
// News search
final news = await search.news('technology',
timelimit: 'd', // last 24 hours
region: 'wt-wt'
);
// Suggestions
final suggestions = await search.suggestions('dart');
// Instant answers
final answer = await search.answers('population of france');
Installation #
Add the following dependency to your pubspec.yaml
file:
dependencies:
duckduckgo_search: ^0.2.0
Then, run flutter pub get
or dart pub get
to install the package.
Usage #
Import the package in your Dart file:
import 'package:duckduckgo_search/duckduckgo_search.dart';
Perform a search:
void main() async {
final results = await DuckDuckGoSearch.text('dartlang');
for (var result in results) {
print(result.title);
print(result.url);
print(result.body);
print('---');
}
}
Request search suggestions:
void main() async {
final results = await DuckDuckGoSearch.suggestions('dartlang');
for (var suggestion in results) {
print(suggestion);
}
}
quick answer:
void main() async {
final answer = await DuckDuckGoSearch.answer('who is miles davis');
print(answer.answerAbstract);
}
Contributing #
Contributions are welcome! Please open an issue or submit a pull request on GitHub.
License #
This project is licensed under the MIT License. See the LICENSE file for details.
Changelog See the CHANGELOG file for version history.
Acknowledgements #
This library is a Dart port of the Python duckduckgo_search library.