Releases: fake-useragent/fake-useragent
2.0.3
- Fix
importlib-resources
independencies
toml file. See the2.0.0
release below for all the changes that are in v2.0.0!!
Full Changelog: 2.0.2...2.0.3
2.0.2
Sync latest docs to PyPi. See the 2.0.0
release below for all the changes that are in v2.0.0!!
Full Changelog: 2.0.1...2.0.2
2.0.1
Small patch release after v2.0.0, by adding a requires-python line to the toml file. We only support Python 3.9 or newer.
What's Changed
- Bump validate-pyproject from 0.22 to 0.23 by @dependabot in #393
- Bump coverage from 7.6.4 to 7.6.8 by @dependabot in #398
- Bump ruff from 0.7.3 to 0.8.1 by @dependabot in #403
- Bump tomli from 2.0.2 to 2.2.1 by @dependabot in #401
- Specify
__all__
in__init__.py
to fix pyright support by @CNSeniorious000 in #405
New Contributors
- @CNSeniorious000 made their first contribution in #405
Full Changelog: 2.0.0...2.0.1
2.0.0
fake-useragent v2.0.0
Finally, we successfully switched (again) to a new data source from Intoli, which allows us to have much more user-agent strings again. Thank you all for your support!
Important: Keep in mind that v2.0.0 does have some breaking changes like platform
type "pc" value is now changed to "desktop" (in case you were using this). See below for all breaking changes!
Breaking changes
- OS and browser options are now case sensitive!!
- Possible browser options are:
["Google", "Chrome", "Firefox", "Edge", "Opera"," Safari", "Android", "Yandex Browser", "Samsung Internet", "Opera Mobile", "Mobile Safari", "Firefox Mobile", "Firefox iOS", "Chrome Mobile", "Chrome Mobile iOS", "Mobile Safari UI/WKWebView", "Edge Mobile", "DuckDuckGo Mobile", "MiuiBrowser", "Whale", "Twitter", "Facebook", "Amazon Silk"]
- Most browser strings are case-sensitive, except for some common browsers like
firefox
,edge
,chrome
,opera
,safari
. In these cases you will receive both mobile and non-mobile user-agent strings by default. - Platforms types (if specified) allowed options are:
["desktop", "mobile", "tablet"]
(nopc
anymore) - Possible OS options are now increased to the following list:
["Windows", "Linux", "Ubuntu", "Chrome OS", "Mac OS X", "Android", "iOS"]
. And again case sensitive.
Improved
min_percentage
option works again! And uses thepercent
field of the user-agent data
Please read the README for more examples and options.
What's Changed
- Bump cachetools from 5.3.2 to 5.3.3 by @dependabot in #313
- Bump ruff from 0.3.2 to 0.3.4 by @dependabot in #316
- Bump importlib-resources from 6.1.3 to 6.4.0 by @dependabot in #317
- Bump black from 24.2.0 to 24.3.0 by @dependabot in #314
- Bump ruff from 0.3.4 to 0.3.5 by @dependabot in #322
- Bump importlib-metadata from 7.0.2 to 8.0.0 by @dependabot in #337
- Bump pytest-cov from 4.1.0 to 5.0.0 by @dependabot in #318
- Bump filelock from 3.13.1 to 3.16.1 by @dependabot in #343
- Upgrade github actions by @melroy89 in #345
- Bump build from 1.0.3 to 1.2.2 by @dependabot in #348
- Bump zipp from 3.17.0 to 3.20.2 by @dependabot in #350
- Bump importlib-metadata from 8.0.0 to 8.5.0 by @dependabot in #347
- Bump pytest from 8.1.1 to 8.3.3 by @dependabot in #349
- Code & Docs cleanup + Package updates by @melroy89 in #351
- Finish deprecating Python 3.8 by @sebastian-correa in #352
- Add basic type hints to the whole package by @sebastian-correa in #346
- Bump typing-extensions from 4.10.0 to 4.12.2 by @dependabot in #359
- Bump pyparsing from 3.1.1 to 3.1.4 by @dependabot in #362
- Bump ruff from 0.6.7 to 0.6.8 by @dependabot in #361
- Bump validate-pyproject from 0.16 to 0.20.2 by @dependabot in #360
- Bump cachetools from 5.3.3 to 5.5.0 by @dependabot in #358
- Remove mutable defaults and allow more generic types by @sebastian-correa in #357
- Fix and improve ruff configs by @sebastian-correa in #364
- Bump tomli from 2.0.1 to 2.0.2 by @dependabot in #366
- Bump platformdirs from 4.2.0 to 4.3.6 by @dependabot in #368
- Bump pyproject-hooks from 1.0.0 to 1.2.0 by @dependabot in #367
- Add Google Style docstrings to codebase by @sebastian-correa in #365
- Bump ruff from 0.6.8 to 0.6.9 by @dependabot in #375
- Bump pyparsing from 3.1.4 to 3.2.0 by @dependabot in #371
- Bump distlib from 0.3.8 to 0.3.9 by @dependabot in #373
- Bump build from 1.2.2 to 1.2.2.post1 by @dependabot in #374
- Bump ruff from 0.6.9 to 0.7.2 by @dependabot in #385
- Bump validate-pyproject from 0.20.2 to 0.22 by @dependabot in #384
- Bump coverage from 7.6.1 to 7.6.4 by @dependabot in #381
- Bump black from 24.8.0 to 24.10.0 by @dependabot in #376
- Bump ruff from 0.7.2 to 0.7.3 by @dependabot in #387
- Bump zipp from 3.20.2 to 3.21.0 by @dependabot in #386
- Bump pytest-cov from 5.0.0 to 6.0.0 by @dependabot in #389
- Bump packaging from 23.2 to 24.2 by @dependabot in #388
- Using the new JSONlines format + new data source by @melroy89 in #400
New Contributors
- @sebastian-correa made their first contribution in #352
Full Changelog: 1.5.1...2.0.0
Release v1.5.1 📦
Fix: Remove trailing spaces in user agent strings
What's Changed
- Bump pytest from 7.4.3 to 8.1.1 by @dependabot in #306
- Bump lxml from 4.9.3 to 5.1.0 by @dependabot in #305
- Bump virtualenv from 20.25.0 to 20.25.1 by @dependabot in #303
- Bump ruff from 0.2.1 to 0.3.2 by @dependabot in #304
- Bump typing-extensions from 4.9.0 to 4.10.0 by @dependabot in #302
- Removed trailing spaces in user agent strings. by @BoudewijnZwart in #308
Full Changelog: 1.5.0...1.5.1
Release v1.5.0 📦
Most important change: The user-agent database has been updated with a more recent list of user agents. It also now comes with mobile UA's, meaning a new parameter: platforms
has been introduced (see README.md).
The only down-side is that this new data source didn't contain any usage data, meaning min_percentage
is not useful anymore. Despite which min_percentage
value you set, fake-useragent always return all data records for backwards compatibility reasons.
What's Changed
- Bump cryptography from 41.0.5 to 41.0.6 in /cache_scraper by @dependabot in #246
- Bump idna from 3.4 to 3.6 by @dependabot in #245
- Bump twisted from 22.10.0 to 23.10.0 by @dependabot in #244
- Bump tox from 4.11.3 to 4.11.4 by @dependabot in #247
- Bump cryptography from 41.0.6 to 41.0.7 by @dependabot in #248
- Bump importlib-metadata from 6.8.0 to 7.0.0 by @dependabot in #249
- Bump virtualenv from 20.24.7 to 20.25.0 by @dependabot in #250
- Bump ruff from 0.1.6 to 0.1.13 by @dependabot in #263
- Bump isort from 5.12.0 to 5.13.2 by @dependabot in #258
- Bump typing-extensions from 4.8.0 to 4.9.0 by @dependabot in #256
- Bump pathspec from 0.11.2 to 0.12.1 by @dependabot in #255
- Bump platformdirs from 4.0.0 to 4.1.0 by @dependabot in #252
- Bump cryptography from 41.0.7 to 42.0.0 in /cache_scraper by @dependabot in #271
- Bump importlib-metadata from 7.0.0 to 7.0.1 by @dependabot in #264
- Bump fastjsonschema from 2.19.0 to 2.19.1 by @dependabot in #266
- Bump service-identity from 23.1.0 to 24.1.0 by @dependabot in #268
- Bump coverage from 7.3.2 to 7.4.1 by @dependabot in #269
- Bump ruff from 0.1.13 to 0.2.1 by @dependabot in #272
- Bump tzdata from 2023.3 to 2024.1 by @dependabot in #277
- Bump certifi from 2023.11.17 to 2024.2.2 by @dependabot in #274
- Bump platformdirs from 4.1.0 to 4.2.0 by @dependabot in #273
- Bump distlib from 0.3.7 to 0.3.8 by @dependabot in #275
- Bump black from 23.11.0 to 24.1.1 by @dependabot in #276
- Bump black from 23.11.0 to 24.2.0 by @dependabot in #279
- Bump scrapy from 2.11.0 to 2.11.1 in /cache_scraper by @dependabot in #280
- Bump tox from 4.11.4 to 4.13.0 by @dependabot in #283
- Bump scrapy from 2.11.0 to 2.11.1 by @dependabot in #282
- Bump urllib3 from 2.1.0 to 2.2.1 by @dependabot in #285
- Bump zope-interface from 6.1 to 6.2 by @dependabot in #286
- Bump cryptography from 42.0.0 to 42.0.4 in /cache_scraper by @dependabot in #288
- Bump cryptography from 42.0.0 to 42.0.5 by @dependabot in #289
- Bump twisted from 23.10.0 to 24.3.0 by @dependabot in #291
- Bump pyopenssl from 23.3.0 to 24.0.0 by @dependabot in #293
- Bump attrs from 23.1.0 to 23.2.0 by @dependabot in #292
- Bump coverage from 7.4.1 to 7.4.3 by @dependabot in #294
- Bump pytz from 2023.3.post1 to 2024.1 by @dependabot in #295
- Useragent list update by @BoudewijnZwart in #290
- Create an auto merge dependabot workflow by @melroy89 in #296
- Bump validate-pyproject from 0.15 to 0.16 by @dependabot in #300
- Bump tox from 4.13.0 to 4.14.1 by @dependabot in #297
- Bump pluggy from 1.3.0 to 1.4.0 by @dependabot in #299
- Bump importlib-resources from 6.1.1 to 6.1.3 by @dependabot in #301
- Bump importlib-metadata from 7.0.1 to 7.0.2 by @dependabot in #298
New Contributors
- @BoudewijnZwart made their first contribution in #290
Full Changelog: 1.4.0...1.5.0
Release v1.4.0 📦
What's Changed
- Bump urllib3 from 2.0.4 to 2.0.6 in /cache_scraper by @dependabot in #217
- Bump tzlocal from 5.0.1 to 5.1 by @dependabot in #218
- Bump build from 0.10.0 to 1.0.3 by @dependabot in #221
- Bump tldextract from 3.4.4 to 3.6.0 by @dependabot in #220
- Bump cffi from 1.15.1 to 1.16.0 by @dependabot in #219
- Bump urllib3 from 2.0.6 to 2.0.7 in /cache_scraper by @dependabot in #226
- Bump click from 8.1.6 to 8.1.7 by @dependabot in #225
- Bump filelock from 3.12.2 to 3.12.4 by @dependabot in #223
- Bump twisted from 22.10.0 to 23.8.0 by @dependabot in #224
- Bump validate-pyproject from 0.13 to 0.15 by @dependabot in #222
- Bump coverage from 7.3.1 to 7.3.2 by @dependabot in #229
- Bump pyopenssl from 23.2.0 to 23.3.0 by @dependabot in #228
- python 3.12 support by @vladkens in #232
- Bump twisted from 23.8.0 to 23.10.0 in /cache_scraper by @dependabot in #240
- Update packages/fix package conflicts in cache scraper by @melroy89 in #242
- Updated packages of fake useragent by @melroy89 in #243
New Contributors
Full Changelog: 1.3.0...1.4.0
Release v1.3.0 📦
- Introducing new
ua.getRandom
,ua.getFirefox
,ua.getChrome
,ua.getSafari
. And a generic method:ua.getBrowser(..)
(eg.getBrowser('firefox')
)- These new properties above allows you to retrieve the whole raw Python dictionary, instead of only the UA string.
- These properties might return different key/values pairs in the future! So
ua.random
is a more stable interface.
- Fix the
os
argument 'windows' to check for bothwin10
andwin7
values (previously only checking onwin10
), thus returning more UAs - Improved user-agent scraper (now also containing Safari browser again)
- Updated browsers.json data file
Release v1.2.1 📦
- Still using the new dataset of course!
- Small improvements in the min_percentage check
- Update all Pip package dependencies
Note: Parameter use_external_data=True
and verify_ssl
are removed. If you use those parameters, just remove it in your code!
Release v1.2.0 📦
- Updated browser useragent data 🚀
- Allow filters on browser, OS and usage percentage 🚀
- Update the cache scraper to scape the new data source for user-agent strings
- Adapted the code to work with the new JSON data format
- Parameter
use_external_data=True
andverify_ssl
are removed. If you use those parameters, just remove it in your code!