Advertisement
Guest User

Untitled

a guest
Jul 15th, 2024
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.71 KB | Source Code | 0 0
  1. #pip install openpyxl
  2. #pip install xlrd
  3. #pip install pandas
  4. from plemmy import LemmyHttp
  5. from plemmy.responses import PostResponse
  6. import pandas as pd
  7. import xlrd
  8. import datetime
  9. import requests,json
  10. # Get the current date as string
  11. current_date = str(datetime.date.today())
  12.  
  13. #Import file and find today's stage information
  14. tdf2024 = pd.read_excel('tdf2024.xlsx', engine='openpyxl') #Import xlsx file
  15. tdf2024['date']=pd.to_datetime(tdf2024['date'],dayfirst=False) #Convert date column to ISO8601
  16. tdf2024.set_index('date', inplace=True)
  17.  
  18. #Don't make a post if it is a rest day
  19. if tdf2024.at[current_date,'stage'] == False:
  20.     exit()
  21.    
  22. #Create title and body
  23. stage = str(int(tdf2024.at[current_date,'etape']))
  24. route = tdf2024.at[current_date,'route']
  25. stage_type = tdf2024.at[current_date,'type']
  26. stage_lenght = str(int(tdf2024.at[current_date,'length']))
  27. stage_start = tdf2024.at[current_date,'starttime']
  28. stage_profile = "![](" + tdf2024.at[current_date,'hill map'] + ")"
  29. stage_map = "![](" + tdf2024.at[current_date,'route map'] + ")"
  30.  
  31. title = "[" + current_date + "] Tour de France: " + stage + ". etape " + route
  32.  
  33. url_post = tdf2024.at[current_date,'route map']
  34.  
  35. body = """Så er det tid til endnu etape af Tour de France.
  36.  
  37. Dagens etape er en """ + stage_type + """ på ruten """ + route + """ og er """ + stage_lenght + """ km lang.
  38.  
  39. Den reelle start forventes at være kl """ + stage_start + """.
  40.  
  41. Mere information om etapen kan ses på [TV2's hjemmeside](https://sport.tv2.dk/cykling/2023-10-26-tour-de-france-2024-""" + stage + """-etape), samt på [Tour'ens hjemmeside](https://www.letour.fr/en/stage-""" + stage + """)
  42.  
  43. """ + stage_profile + """
  44.  
  45. Denne tråd oprettes automatisk af [botten](https://github.com/Fedihosting-Foundation/plemmy) på dagen for hver etape kl 6.
  46. """
  47.  
  48. #Find community id
  49. params = {
  50.     'name': 'sport',
  51. }
  52. response = requests.get('https://feddit.dk/api/v3/community', params=params).json()
  53.  
  54. community = response['community_view']['community']
  55. community_id = community['id']
  56.  
  57. # create object for feddit.dk, log in
  58. srv = LemmyHttp("https://feddit.dk")
  59. #srv = LemmyHttp("https://voyager.lemmy.ml")
  60.  
  61. srv.login("President_Pyrus", "hunter2")
  62.  
  63. # create post, parse JSON
  64. #api_response = srv.create_post(67912, title, body)
  65. api_response = srv.create_post(community_id, title, body, url = url_post)
  66. #11: To get a community ID, simply curl
  67. #https://instance.tld/api/v3/community?name=community_name
  68. #and the value will be in "community_view">"community">"id"
  69. #v3: API version: https://join-lemmy.org/docs/contributors/04-api.html
  70. response = PostResponse(api_response)
  71. post = response.post_view.post
  72. print(post.creator_id)
  73. print(post.community_id)
  74. print(post.name)
  75. print(post.body)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement