J'ai un hachage de torrent à partir du lien de l'aimant. Par exemple: fda164e7af470f83ea699a529845a9353cc26576 Lorsque j'essaie d'obtenir des informations sur leechers et les pairs, je devrais demander: http://tracker.publicbt.com/scrape?info_hash= ??? Comment convertir les informations de hachage pour cette requête? Est-ce l'encodage de l'url ou le fait de le devenir? Comment? En PHP.Comment faire pour convertir les informations torrent hash pour gratter?
Répondre
Il s'agit d'une représentation hexadécimale brute. Utilisez pack()
avec H
pour le convertir. Ensuite, l'URL l'encodera.
Got cet extrait de python d'un collègue,
r = ''
s = 'fda164e7af470f83ea699a529845a9353cc26576'
for n in range(0, len(s), 2):
r += '%%%s' % s[n:n+2].upper()
print r
sortie:% FD% A1% 64% E7% AF% 47% 0F% 83% EA% 69% 9A% 52% 98% 45% A9% 35% 3C% C2% 65% 76
Fonctionne comme un charme.
Edit: Fonctionne comme un charme pour obtenir le tracker pour redonner le statut 200 (ok) mais ne fonctionne toujours pas pour récupérer les détails torrent ...
au cas où quelqu'un a du mal et vient à travers cette thread dans le futur: l'astuce à tout ce problème est d'utiliser l'argument bool $raw_output
de la fonction PHP: sha1, en le mettant à "vrai". Les classes BDecode/DEncode sont HERE. Ce projet, appelé Trackon, comprend également de nombreuses autres classes utiles pour interagir avec les trackers et les fichiers torrent.
Ainsi, en PHP, quelque chose comme cela fonctionnera pour obtenir le hachage correct info pour gratter le tracker pour plus de détails:
include('./path/to/BDecode.php');
include('./path/to/BEncode.php');
function getHash($torFile){
$tfile = BDecode(file_get_contents($torFile));
$infohash = sha1(BEncode($tfile["info"]), TRUE);
return urlencode($infohash);
}
Ensuite, appelez simplement comme ceci:
$hash = getHash('./path/to/.torrent');
J'espère que cela aidera quelqu'un là-bas. Je me grattais encore la tête après avoir lu de nombreux messages sur la façon d'obtenir le hachage d'informations correctes. Je comprends pourquoi cela n'a été mentionné nulle part maintenant, cet argument a été ajouté en PHP 5. Si vous n'utilisez pas PHP 5, vous devrez convertir le hachage sha1 en binaire brut après l'avoir calculé.
- 1. Analyse des informations du torrent externe
- 2. Comment faire pour calculer le hachage d'informations Torrent dans VB6
- 3. Comment calculer l'URL de scrape pour un torrent
- 4. comment obtenir les pairs d'un torrent tracker
- 5. convertir HASH en ARRAY
- 6. Convertir les informations d'exception Python en chaîne pour la journalisation
- 7. Comment convertir cette séquence en hash?
- 8. Comment faire pour convertir CreateProcess à ShellExecuteEx?
- 9. Comment faire pour convertir NSString en octets
- 10. Comment faire pour convertir HTML en BBCode
- 11. Comment faire pour convertir NSArray en NSString
- 12. Comment faire pour convertir MethodCallExpression en BinaryExpression
- 13. Comment faire pour convertir les colonnes DetailsView en majuscules
- 14. htaccess rewrite Hash pour ajax
- 15. Comment écrire un hash pour minimiser les collisions?
- 16. Écrire un programme pour gratter des forums
- 17. Comment faire pour gratter des données de LocService (http://www.trackdroid.org/locservice.html) en utilisant PHP
- 18. Ruby: Faire un hash à partir de Hash => Set
- 19. Comment utiliser python regex pour faire correspondre les mots commençant par hash et point d'interrogation?
- 20. Comment faire pour désactiver les informations de création pour une page drupal
- 21. Comment faire correspondre les informations d'une chaîne
- 22. Comment compter les semoirs torrent et les pairs?
- 23. Comment convertir/traduire des informations?
- 24. Gratter et convertir le site Web en HTML?
- 25. Comment faire pour regex d'ignorer les chaînes d'URL?
- 26. Comment concevoir une application torrent?
- 27. Comment convertir les informations TLE en latitude et altitude pour qu'elles s'affichent sur une carte Bing?
- 28. Comment faire pour convertir entre TVarRec et Variant?
- 29. Comment faire pour convertir l'interface VB.net avec enum à C#
- 30. Comment faire pour convertir des éléments de NSMutableArray à NSString