Kennedy Parker
🎨𝖆𝖗𝖙𝖎𝖘𝖙🎨
- Moderator
- #1
Dropbox
www.dropbox.com
Special thanks to Hate for supplying player lists and thread IDs across seasons to make compiling all of this possible. The above dropbox link contains all the posting activity data from Seasons 1-23 and that combined with all the works by Ant Bear, WaynesWorld19 and serial_thrilla in tracking posting activity between Season 24-33 provides a near complete dataset of the league's engagement levels over the seasons.
Script to automate collecting match thread post count data
For anyone who is familiar with Python, the below code can extract posting data from BF thread contributors function into a csv file.
All you should really need to do is set up a folder with a notepad named "processing" and paste links to any threads you want to count posts for and save.
Enter username and password into console and the code will start scanning 'thread contributors' function for post count data.
Dropbox
www.dropbox.com
Python:
import selenium
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import csv
driver = webdriver.Chrome()
def bf_login():
driver.get("https://www.bigfooty.com/forum/login")
driver.find_element("name", "login").send_keys(un)
driver.find_element("name", "password").send_keys(pw)
driver.find_element("name", "password").send_keys(Keys.ENTER)
def postcounter():
posterlist = []
countlist = []
file = open('Processing.txt')
for thread_id in file:
url = thread_id
driver.get(url)
#print(driver.current_url)
url = driver.current_url + "top-contributors"
driver.get(url)
posters = driver.find_elements("xpath", '//h3[@class="contentRow-header"]')
count = driver.find_elements("xpath", '//div[@class="contentRow-extra contentRow-extra--largest"]')
for p in posters:
#print(p.text)
posterlist.append(p.text)
for q in count:
#print(q.text)
countlist.append(q.text)
set = dict(zip(posterlist, countlist))
with open('output.csv', 'a', newline = '') as csv_file:
writer = csv.writer(csv_file)
writer.writerow([thread_id])
for key, value in set.items():
writer.writerow([key,value])
posterlist = []
countlist = []
file.close()
un = input('user: ')
pw = input('pass: ')
bf_login()
postcounter()
driver.quit()