A UDP torrent tracker scraper written in Python 3
pipenv install torrent-tracker-scraper
pipenv shell
from torrent_tracker_scraper import scraper
scraper = scraper.Scraper(
infohashes=[
"82026E5C56F0AEACEDCE2D7BC2074A644BC50990",
"04D9A2D3FAEA111356519A0E0775E5EAEE9C944A",
]
)
results = scraper.scrape()
print(results)
[
...,
{
'tracker': 'udp://explodie.org:6969',
'results': [
{
'infohash': '82026E5C56F0AEACEDCE2D7BC2074A644BC50990',
'seeders': 246,
'completed': 0,
'leechers': 36
},
{
'infohash': '04D9A2D3FAEA111356519A0E0775E5EAEE9C944A',
'seeders': 7,
'completed': 0,
'leechers': 27
}
]
},
{
'tracker': 'udp//:bt-trace.adgk.net:6969',
'results': [
{
'infohash': '82026E5C56F0AEACEDCE2D7BC2074A644BC50990', 'error': 'Could not get stats for infohash [bt-trace.adgk.net:6969]'
},
{
'infohash': '04D9A2D3FAEA111356519A0E0775E5EAEE9C944A', 'error': 'Could not get stats for infohash [bt-trace.adgk.net:6969]'
}
],
'error': None
}
...
Get your scrapped information
from torrent_tracker_scraper import scraper
scraper = scraper.Scraper(
trackers=["udp://explodie.org:6969/annouce"],
infohashes=[
"82026E5C56F0AEACEDCE2D7BC2074A644BC50990",
"04D9A2D3FAEA111356519A0E0775E5EAEE9C944A",
],
)
results = scraper.scrape()
print(results)
[
...,
{
'tracker': 'udp://explodie.org:6969',
'results': [
{
'infohash': '82026E5C56F0AEACEDCE2D7BC2074A644BC50990',
'seeders': 246,
'completed': 0,
'leechers': 36
},
{
'infohash': '04D9A2D3FAEA111356519A0E0775E5EAEE9C944A',
'seeders': 7,
'completed': 0,
'leechers': 27
}
]
},
...
pipenv install --dev
pipenv run pytest
-
Install dev dependencies
pipenv install --dev
-
Make your changes
-
Make sure your tests pass
pipenv run pytest
-
Create an issue here
https://github.com/project-mk-ultra/torrent-tracker-scraper/issues.