FiicenというSNSに使えるAPIラッパー
- requests
- bs4
- selenium
from fiicen_py import Fiicen
fiicen=Fiicen(name="ユーザー名",password="パスワード")#ログイン、nameとpasswordを設定しなかったらログインをスキップします
print(fiicen.fly_circle(contents="メインの文章",vote_choices1="投票の選択肢1",vote_choices2="投票の選択肢2"))#リプライをつける時は circle_id="リプするサークルID"
print(fiicen.change_profile(display_name="表示名",introduce="自己紹介"))
print(fiicen.follow(followed_id="ユーザーID"))#ユーザーIDの取得方法がリクエスト見るしかなさそうなので使い道ナシ?
print(fiicen.get_topic())#タイムラインをhtmlで取得する
print(fiicen.notification())#通知の数をintで返す
print(fiicen.like(circle_id="サークルID"))#いいね!
print(fiicen.refly(circle_id="サークルID"))#リフライ
print(fiicen.fix_circle(circle_id="サークルID"))#プロフィールにサークルを固定
print(fiicen.report(circle_id="サークルID",type="通報理由"))#サークルを通報、理由は:harassment / sensitive / spam / suicide / spoofing / privacy / violence / misinformation / discrimination から選ぶ
print(fiicen.vote(circle_id="サークルID",choices_id="投票の選択肢のID"))#投票する
fiicen=Fiicen()#アカウント作成の時はログインをスキップ
print(fiicen.create_account(name="ユーザー名",display_name="表示名",password="パスワード"))
print(fiicen.check_account_name(name="ユーザー名"))#ユーザー名が使用されているかどうか確認する...使いどころは不明
使い方は#コメントに書いてある通りで、それ以上はなにもないです
返される値もステータスコードくらいで重要なものはありません
.fly_circle()
/ .change_profile()
/ .follow()
/ .create_account()
/ .like()
/ .refly()
/ .report()
-
ステータスコード
言わずもがな200が成功、それ以外はエラーになる
get_topic()
-
html
bs4などで要素を抽出する必要アリ
.check_account_name()
-
bool
True
orFalse
.fix_circle()
-
dict
{result: "fixed"}
or{result: "unfixed"}
.notification()
-
int
0,1,2,3,4,5,6......
.vote()
-
dict
{result:"liked"}
from selenium import webdriver
from selenium.webdriver.common.by import By
from time import sleep
from fiicen_py import Fiicen
options = webdriver.ChromeOptions()
options.add_argument('--headless')
#options.add_argument('--proxy-server=http://IP.ア.ドレ.ス:ポート')#プロキシを設定する
driver = webdriver.Chrome(options=options)
def account_gen(account_name:str,display_name:str,password:str):
try:
driver.get('https://fiicen.jp/login/')#reCaptha追加されてるのにこのリクエストがないとcsrftokenが生成されないやばいバグが修正されてない (5/22)
#sleep(1)
driver.get('https://fiicen.jp/signup/')
sleep(1)
try:
account_name_input=driver.find_element(By.ID,"account_name")
except:
sleep(2)
account_name_input=driver.find_element(By.ID,"account_name")
account_name_input.send_keys(account_name)
driver.find_element(By.XPATH, '//*[@onclick="openSignupPage(1, 2);"]').click()
sleep(1)
account_display_name_input=driver.find_element(By.ID,"display_name")
account_display_name_input.send_keys(display_name)
driver.find_element(By.XPATH, '//*[@onclick="openSignupPage(2, 3);"]').click()
sleep(1)
password_input=driver.find_element(By.ID,"password")
password_input.send_keys(password)
driver.find_element(By.XPATH, '//*[@onclick="openSignupPage(3, 4);"]').click()
sleep(1)
driver.find_element(By.XPATH, '//*[@onclick="openSignupPage(4, 5);"]').click()
sleep(1)
driver.find_element(By.XPATH, '//*[@onclick="openSignupPage(5, 6), submitSignup()"]').click()
sleep(1)
driver.delete_all_cookies()
Fiicen(account_name,password)
return "OK"
except:
return "Failed"
print(account_gen("ユーザー名","表示名","パスワード"))
5/22の夜にアカウント生成だけreCaptcha(v3だけで評価後の動作は未確認)が必須になったみたいなので、ヘッドレスブラウザーでアカウントを作成するジェネレーターを作りました
無料でキャプチャーを突破するのはこうするしかないと思います
有料ソルバー使うってあなたはそもそもラッパー必要ないでしょ!🫵
Discord サーバー / https://discord.gg/aSyaAK7Ktm
Discord ユーザー名 / .taka.