this is based on calsyslab project
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

144 lines
5.1 KiB

1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
  1. __author__ = 'DarkWeb'
  2. '''
  3. Starting point of the Darkweb Markets Mining
  4. '''
  5. from datetime import *
  6. from MarketPlaces.DarkFox.crawler_selenium import crawler as crawlerDarkFox
  7. from MarketPlaces.Tor2door.crawler_selenium import crawler as crawlerTor2door
  8. from MarketPlaces.ThiefWorld.crawler_selenium import crawler as crawlerThiefWorld
  9. from MarketPlaces.TorBay.crawler_selenium import crawler as crawlerTorBay
  10. from MarketPlaces.LionMarketplace.crawler_selenium import crawler as crawlerLionMarketplace
  11. from MarketPlaces.TorMarket.crawler_selenium import crawler as crawlerTorMarket
  12. from MarketPlaces.MikesGrandStore.crawler_selenium import crawler as crawlerMikesGrandStore
  13. from MarketPlaces.DarkTor.crawler_selenium import crawler as crawlerDarkTor
  14. from MarketPlaces.DigitalThriftShop.crawler_selenium import crawler as crawlerDigitalThriftShop
  15. from MarketPlaces.AnonymousMarketplace.crawler_selenium import crawler as crawlerAnonymousMarketplace
  16. from MarketPlaces.Apocalypse.crawler_selenium import crawler as crawlerApocalypseMarketplace
  17. from MarketPlaces.CityMarket.crawler_selenium import crawler as crawlerCityMarket
  18. from MarketPlaces.DarkMatter.crawler_selenium import crawler as crawlerDarkMatter
  19. from MarketPlaces.M00nkeyMarket.crawler_selenium import crawler as crawlerM00nkeyMarket
  20. from MarketPlaces.ViceCity.crawler_selenium import crawler as crawlerViceCity
  21. from MarketPlaces.HiddenMarket.crawler_selenium import crawler as crawlerHiddenMarket
  22. from MarketPlaces.RobinhoodMarket.crawler_selenium import crawler as crawlerRobinhoodMarket
  23. from MarketPlaces.Nexus.crawler_selenium import crawler as crawlerNexus
  24. from MarketPlaces.CypherMarketplace.crawler_selenium import crawler as crawlerCypher
  25. from MarketPlaces.DarkBazar.crawler_selenium import crawler as crawlerDarkBazar
  26. import configparser
  27. import os
  28. import subprocess
  29. config = configparser.ConfigParser()
  30. config.read('../../setup.ini')
  31. CURRENT_DATE = str("%02d" % date.today().month) + str("%02d" % date.today().day) + str("%04d" % date.today().year)
  32. # reads list of marketplaces
  33. def getMarkets():
  34. mkts = []
  35. with open('MarketsList.txt') as f:
  36. mkts = f.readlines()
  37. return mkts
  38. # Creates needed directories for marketplace if doesn't exist
  39. def createDirectory(mkt):
  40. # Package should already be there, holding crawler and parser
  41. # pagesDir = '../' + mkt + '/HTML_Pages'
  42. pagesDir = os.path.join(config.get('Project', 'shared_folder'), "MarketPlaces/" + mkt + "/HTML_Pages")
  43. if not os.path.isdir(pagesDir):
  44. os.makedirs(pagesDir)
  45. currentDateDir = pagesDir + '/' + CURRENT_DATE
  46. if not os.path.isdir(currentDateDir):
  47. os.mkdir(currentDateDir)
  48. listingDir = currentDateDir + '/Listing'
  49. if not os.path.isdir(listingDir):
  50. os.mkdir(listingDir)
  51. listReadDir = listingDir + '/Read'
  52. if not os.path.isdir(listReadDir):
  53. os.mkdir(listReadDir)
  54. descriptionDir = currentDateDir + '/Description'
  55. if not os.path.isdir(descriptionDir):
  56. os.mkdir(descriptionDir)
  57. descReadDir = descriptionDir + '/Read'
  58. if not os.path.isdir(descReadDir):
  59. os.mkdir(descReadDir)
  60. # Opens Tor Browser
  61. def opentor():
  62. global pid
  63. print("Connecting Tor...")
  64. pro = subprocess.Popen(config.get('TOR', 'firefox_binary_path'))
  65. pid = pro.pid
  66. # time.sleep(7.5)
  67. input('Press ENTER when Tor is connected to continue')
  68. return
  69. if __name__ == '__main__':
  70. # opentor()
  71. mktsList = getMarkets()
  72. for mkt in mktsList:
  73. mkt = mkt.replace('\n','')
  74. print("\nCreating listing and description directories ... for " + mkt)
  75. createDirectory(mkt)
  76. print("Directories created.")
  77. if mkt == "DarkFox":
  78. # for base in json["DarkFox"]["base"]:
  79. # if crawlerDarkFox(base["url"], base["categories"]):
  80. # break
  81. crawlerDarkFox()
  82. elif mkt == 'Tor2door':
  83. crawlerTor2door()
  84. elif mkt == "ThiefWorld":
  85. crawlerThiefWorld()
  86. elif mkt == "TorBay":
  87. crawlerTorBay()
  88. elif mkt == "LionMarketplace":
  89. crawlerLionMarketplace()
  90. elif mkt == "TorMarket":
  91. crawlerTorMarket()
  92. elif mkt == "MikesGrandStore":
  93. crawlerMikesGrandStore()
  94. elif mkt == "DarkTor":
  95. crawlerDarkTor()
  96. elif mkt == "DigitalThriftShop":
  97. crawlerDigitalThriftShop()
  98. elif mkt == "AnonymousMarketplace":
  99. crawlerAnonymousMarketplace()
  100. elif mkt == "Apocalypse":
  101. crawlerApocalypseMarketplace()
  102. elif mkt == "CityMarket":
  103. crawlerCityMarket()
  104. elif mkt == "DarkMatter":
  105. crawlerDarkMatter()
  106. elif mkt == "M00nkeyMarket":
  107. crawlerM00nkeyMarket()
  108. elif mkt == "ViceCity":
  109. crawlerViceCity()
  110. elif mkt == "HiddenMarket":
  111. crawlerHiddenMarket()
  112. elif mkt == "RobinhoodMarket":
  113. crawlerRobinhoodMarket()
  114. elif mkt == "Nexus":
  115. crawlerNexus()
  116. elif mkt == "CypherMarketplace":
  117. crawlerCypher()
  118. elif mkt == "DarkBazar":
  119. crawlerDarkBazar()
  120. print("\nScraping process completed!")