Просмотр полной версии : Arizona Forum API [v2.2]
TastyBread123
08.07.2023, 16:13
Всех приветствую
Как вы могли догадаться, это API для интернет ресурсов аризоны. Можете потыкать по спойлерам для большей информации
Пакет доступен к установке через pip: pip install arz-api
Github (https://github.com/TastyBread123/Arizona-API/) |Релизы (https://github.com/TastyBread123/Arizona-API/releases) |Документация |PyPI
Не используйте способ с document.cookie в консоли JavaScript. Для этого лучше использовать отдельные расширения для работы с куки. Например, EditThisCookie или Cookie-Editor
Примеры:
Код:
import
arz_api
cookies
=
{
"xf_user"
:
"your"
,
"xf_tfa_trust"
:
"your"
,
"xf_session"
:
"your"
}
api
=
arz_api
.
ArizonaAPI
(
user_agent
=
"your"
,
cookie
=
cookies
)
user
=
api
.
current_member
print
(
f'Успешно авторизовались!\nИмя пользователя:{user.username}| Звание:{user.user_title}\nАватарка:{ user.avatar}\nСообщений:{user.messages_co unt}| Реакций:{user.reactions_count}\n'
)
category
=
api
.
get_category
(
1865
)
print
(
f"Название:{category.title}({category.id})\n Страниц:{category.pages_count}\n"
)
member
=
api
.
get_member
(
583439
)
print
(
f'Пользователь найден!\nИмя пользователя:{member.username}| Звание:{member.user_title}\nАватарка :{member.avatar}\nСообщений:{member.messa ges_count}| Реакций:{member.reactions_count}\n'
)
thread
=
api
.
get_thread
(
6594323
)
print
(
f'Название:{thread.title}({thread.id})\nА втор темы:{thread.creator.username}\nКатегор ия:{thread.category.title}({thread.category.id}) \nДата создания:{thread.create_date}| Закрыто:{thread.is_closed}'
)
statistic
=
api
.
get_forum_statistic
(
)
print
(
f'\n\nТем:{statistic.threads_count}| Постов:{statistic.posts_count}| Пользователей:{statistic.users_count} \nПоследний пользователь:{statistic.last_register_ member.username}'
)
post
=
api
.
get_post
(
36550558
)
print
(
f'\n\nАвтор:{post.creator.username}({post.cre ator.id})\nID:{post.id}| Дата создания:{post.create_date}\nРазмещ но в теме{post.thread.title}\n\n{post.bb_content}'
)
profile_post
=
api
.
get_profile_post
(
2247012
)
print
(
f"\n\nАвтор:{profile_post.creator.username}({pr ofile_post.creator.id})\nСоздано в{profile_post.create_date}у пользователя{profile_post.profile.user name}({profile_post.profile.id})\n\n{profile_post. bb_content}"
)
Отсюда (https://forum.antichat.xyz/threads/1420069/)
Код:
import
arz_api
cookies
=
{
"xf_user"
:
"your"
,
"xf_tfa_trust"
:
"your"
,
"xf_session"
:
"your"
}
api
=
arz_api
.
ArizonaAPI
(
user_agent
=
"your"
,
cookie
=
cookies
)
threads
=
api
.
get_threads
(
354
)
print
(
'Закрепленные темы:'
)
for
i
in
threads
[
"pins"
]
:
thread
=
api
.
get_thread
(
i
)
print
(
f'{thread.title}by{thread.creator.username}'
)
print
(
'\n____________________\nНезакрепленн е темы:'
)
for
i
in
threads
[
"unpins"
]
:
thread
=
api
.
get_thread
(
i
)
print
(
f'{thread.title}by{thread.creator.username}'
)
Отсюда (https://forum.antichat.xyz/threads/1382358/)
Код:
import
arz_api
cookies
=
{
"xf_user"
:
"your"
,
"xf_tfa_trust"
:
"your"
,
"xf_session"
:
"your"
}
try
:
api
=
arz_api
.
ArizonaAPI
(
user_agent
=
"your"
,
cookie
=
cookies
)
print
(
'Success login! Getting last posts in your profile...'
)
for
post_id
in
api
.
current_member
.
get_profile_messages
(
)
:
post
=
api
.
get_profile_post
(
post_id
)
print
(
"\nMessage ID: {0}\nFrom: {1}\nText: {2}\nUnformatted text: {3}"
.
format
(
post
.
creator
.
id
,
post
.
creator
.
username
,
post
.
text_content
,
post
.
bb_content
)
)
except
arz_api
.
IncorrectLoginData
:
print
(
'Invalid login data!'
)
Код:
import
arz_api
cookies
=
{
"xf_user"
:
"your"
,
"xf_tfa_trust"
:
"your"
,
"xf_session"
:
"your"
}
api
=
arz_api
.
ArizonaAPI
(
user_agent
=
"your"
,
cookie
=
cookies
)
# ПРИМЕР ДЛЯ PAYSON
jb
=
api
.
send_form
(
45
,
{
'question[531]'
:
'1'
,
# Тип жалобы (1 - на адм / 2 - на красных), в этом примере на адм (в жб на красных id полей различаются)
'question[532]'
:
"Your_Nick"
,
# Ваш ник
'question[533]'
:
"Admin_Nick"
,
# Ник администратора
'question[534]'
:
"ДМ ЗЗ"
,
# Причина наказания
'question[535]'
:
"ВИ ПЛАХИЕ ОПРУ ИЛИ СНИМАЙТИ ОДМЕНА"
,
# Суть жалобы
'question[536]'
:
"https://imgur.com/a/rfFsf"
,
#Скриншот истории наказаний
'question[537]'
:
"https://imgur.com/a/fGFYj"
,
# Скриншот при входе в игру (при бане)
'question[538]'
:
"2023-07-10"
,
# Дата выдачи наказания
'question[539]'
:
'1'
# Готов нести ответственность в случае обмана
}
)
@xSkateboard (https://forum.antichat.xyz/members/2359356/) - тема (https://forum.antichat.xyz/threads/1420069/), обходик (https://forum.antichat.xyz/threads/1478585/)
@MrCreepTon (https://forum.antichat.xyz/members/1988417/) - тема (https://forum.antichat.xyz/threads/1382358/)
Вроде как имеется (не тестировал). Дополнительно можете при авторизации отключить обход, поставив параметр do_bypass = False
Без обхода:
api
=
ArizonaAPI
(
user_agent
=
"your"
,
cookie
=
cookies
,
do_bypass
=
False
)
Пока что API в стадии разработки, поэтому если найдете баги или есть предложения - пишите сюда
Го автожалобу после бана бота в ракботе
TastyBread123
09.07.2023, 00:00
Update v1.1
- В объект пользователя (Member) был добавлен метод get_profile_messages(page: int), возвращает список из ID сообщений
- В объект поста (Post) были добавлены поля text_content - текст без html тегов
- Теперь методы объекта раздела (Category) get_threads(page) и get_categories() возвращают список (list) из ID
- Поправлены/добавлены комментарии
- Добавлен requirements.txt
- Добавлены новые примеры
Release (https://github.com/TastyBread123/ArizonaForum-API/releases/tag/v1.1)
Basedbounty
09.07.2023, 17:43
Го автожалобу после бана бота в ракботе
up
TastyBread123
09.07.2023, 22:08
Update v1.2
- Теперь из объекта ArizonaAPI можно вызвать большинство методов (пример (https://github.com/TastyBread123/ArizonaForum-API/blob/main/examples/category_threads.py))
- Теперь по умолчанию в get_posts() у объекта Thread стоит 1 страница
- Улучшен внешний вид документации
- Мелкие исправления, улучшения
Release (https://github.com/TastyBread123/ArizonaForum-API/releases/tag/v1.2)
Го автожалобу после бана бота в ракботе
поддерживаю!!!!
TastyBread123
10.07.2023, 13:31
Update v1.3
- Добавлен метод в объект темы (Thread) - edit_info(title: str, prefix_id: int). В ArizonaAPI - edit_thread_info(thread_id: int, title: str, prefix_id: int)
- Новый метод ArizonaAPI send_form(form_id: int, form_data: dict). Может быть использован для создания жалоб (пример (https://github.com/TastyBread123/ArizonaForum-API/blob/main/examples/send_form.py))
- Мелкие исправления, улучшения
Release (https://github.com/TastyBread123/ArizonaForum-API/releases/tag/v1.3)
Philomen
11.07.2023, 16:57
Не хочешь сделать АПИ для личного кабинета на АРЗ? Там можно пробивать статистику игроков, тоже прикольная штука
TastyBread123
11.07.2023, 17:33
Не хочешь сделать АПИ для личного кабинета на АРЗ? Там можно пробивать статистику игроков, тоже прикольная штука
Там пару проблем - капча, а также куки хранятся до закрытия сессии (браузера)
neverlane
16.07.2023, 03:52
Там пару проблем - капча, а также куки хранятся до закрытия сессии (браузера)
в лк просто по-еблански сделана авторизация с jwt токенами, так-то можно 1 раз с помощью любого солвера recaptcha v3 войти а потом сделать следующее
получаем refresh токен (на арз, живет 3 дня) -> обновляем с помощью backend.arizona-rp.com/auth/refresh -> получаем новые access и refresh токены
когда срок access токена заканчивается (12 часов живет вроде) - повторяем наши действия
Как сделать проверку на префикс темы и закреп?
TastyBread123
17.07.2023, 09:47
Как сделать проверку на префикс темы и закреп?
Префикс только если сравнивать с помощью метода startswith
Префикс:
# импортируем, авторизуемся и тд
is_prefix_important
=
api
.
get_thread
(
id
)
.
title
.
startswith
(
"Важно"
)
Проверку на закреп постараюсь сделать в следующей обнове
Как работает get_post?
@bot.on.message(text="+test")
async def echo(message: Message):
for post_id in a_api.get_thread_posts(6635856):
post = a_api.get_post(post_id)
print(post)
https://sun9-15.userapi.com/impg/PdKjq5dAiZIW1c4NnCPsNCIDLCsU2SLpCstJ3g/Xv74La0NYP0.jpg?size=903x333&quality=96&sign=bd05dfb83dfaf18156b426471ecb75f6&type=album
TastyBread123
18.07.2023, 09:26
Update 1.3.1
- Исправлена ошибка с методом get_post
Release (https://github.com/TastyBread123/ArizonaForum-API/releases/tag/v1.3.1)
https://sun9-77.userapi.com/impg/UmjAW8ll7bEt95iUoimwfUiAufcAoX43q5ZdGg/UmDf-Ljl2IQ.jpg?size=717x140&quality=96&sign=8b6feb46b0fbc78b09e06b02f047de07&type=album
Все обновил и ошибка таже)
TastyBread123
18.07.2023, 19:00
https://sun9-77.userapi.com/impg/UmjAW8ll7bEt95iUoimwfUiAufcAoX43q5ZdGg/UmDf-Ljl2IQ.jpg?size=717x140&quality=96&sign=8b6feb46b0fbc78b09e06b02f047de07&type=album
Все обновил и ошибка таже)
Тупанул, пофиксил, скачай с гита еще раз
Всех приветствую
Как вы могли догадаться, это API для форума аризоны. Можете потыкать по спойлерам для большей информации
Github (https://github.com/TastyBread123/ArizonaForum-API)|Релизы (https://github.com/TastyBread123/ArizonaForum-API/releases) |Документация
Примеры:
Код:
import
arz_api
cookies
=
{
"xf_user"
:
"your"
,
"xf_tfa_trust"
:
"your"
,
"xf_session"
:
"your"
,
"xf_csrf"
:
"your"
,
}
api
=
arz_api
.
ArizonaAPI
(
user_agent
=
"your"
,
cookie
=
cookies
)
user
=
api
.
current_member
print
(
f'Успешно авторизовались!\nИмя пользователя:{user.username}| Звание:{user.user_title}\nАватарка:{ user.avatar}\nСообщений:{user.messages_co unt}| Реакций:{user.reactions_count}\n'
)
category
=
api
.
get_category
(
1865
)
print
(
f"Название:{category.title}({category.id})\n Страниц:{category.pages_count}\n"
)
member
=
api
.
get_member
(
583439
)
print
(
f'Пользователь найден!\nИмя пользователя:{member.username}| Звание:{member.user_title}\nАватарка :{member.avatar}\nСообщений:{member.messa ges_count}| Реакций:{member.reactions_count}\n'
)
thread
=
api
.
get_thread
(
6594323
)
print
(
f'Название:{thread.title}({thread.id})\nА втор темы:{thread.creator.username}\nКатегор ия:{thread.category.title}({thread.category.id}) \nДата создания:{thread.create_date}| Закрыто:{thread.is_closed}'
)
statistic
=
api
.
get_forum_statistic
(
)
print
(
f'\n\nТем:{statistic.threads_count}| Постов:{statistic.posts_count}| Пользователей:{statistic.users_count} \nПоследний пользователь:{statistic.last_register_ member.username}'
)
post
=
api
.
get_post
(
36550558
)
print
(
f'\n\nАвтор:{post.creator.username}({post.cre ator.id})\nID:{post.id}| Дата создания:{post.create_date}\nРазмещ но в теме{post.thread.title}\n\n{post.bb_content}'
)
profile_post
=
api
.
get_profile_post
(
2247012
)
print
(
f"\n\nАвтор:{profile_post.creator.username}({pr ofile_post.creator.id})\nСоздано в{profile_post.create_date}у пользователя{profile_post.profile.user name}({profile_post.profile.id})\n\n{profile_post. bb_content}"
)
Отсюда (https://forum.antichat.xyz/threads/1420069/)
Код:
import
arz_api
cookies
=
{
"xf_user"
:
"your"
,
"xf_tfa_trust"
:
"your"
,
"xf_session"
:
"your"
,
"xf_csrf"
:
"your"
}
api
=
arz_api
.
ArizonaAPI
(
user_agent
=
"your"
,
cookie
=
cookies
)
for
thread_id
in
api
.
get_threads
(
1583
)
:
thread
=
api
.
get_thread
(
thread_id
)
print
(
f"{thread.title}by{thread.creator.username}"
)
Отсюда (https://forum.antichat.xyz/threads/1382358/)
Код:
import
arz_api
cookies
=
{
"xf_user"
:
"your"
,
"xf_tfa_trust"
:
"your"
,
"xf_session"
:
"your"
,
"xf_csrf"
:
"your"
}
try
:
api
=
arz_api
.
ArizonaAPI
(
user_agent
=
"your"
,
cookie
=
cookies
)
print
(
'Success login! Getting last posts in your profile...'
)
for
post_id
in
api
.
current_member
.
get_profile_messages
(
)
:
post
=
api
.
get_profile_post
(
post_id
)
print
(
"\nMessage ID: {0}\nFrom: {1}\nText: {2}\nUnformatted text: {3}"
.
format
(
post
.
creator
.
id
,
post
.
creator
.
username
,
post
.
text_content
,
post
.
bb_content
)
)
except
arz_api
.
IncorrectLoginData
:
print
(
'Invalid login data!'
)
Код:
import
arz_api
cookies
=
{
"xf_user"
:
"your"
,
"xf_tfa_trust"
:
"your"
,
"xf_session"
:
"your"
,
"xf_csrf"
:
"your"
}
api
=
arz_api
.
ArizonaAPI
(
user_agent
=
"your"
,
cookie
=
cookies
)
# ПРИМЕР ДЛЯ PAYSON
jb
=
api
.
send_form
(
45
,
{
'question[531]'
:
'1'
,
# Тип жалобы (1 - на адм / 2 - на красных), в этом примере на адм (в жб на красных id полей различаются)
'question[532]'
:
"Your_Nick"
,
# Ваш ник
'question[533]'
:
"Admin_Nick"
,
# Ник администратора
'question[534]'
:
"ДМ ЗЗ"
,
# Причина наказания
'question[535]'
:
"ВИ ПЛАХИЕ ОПРУ ИЛИ СНИМАЙТИ ОДМЕНА"
,
# Суть жалобы
'question[536]'
:
"https://imgur.com/a/rfFsf"
,
#Скриншот истории наказаний
'question[537]'
:
"https://imgur.com/a/fGFYj"
,
# Скриншот при входе в игру (при бане)
'question[538]'
:
"2023-07-10"
,
# Дата выдачи наказания
'question[539]'
:
'1'
# Готов нести ответственность в случае обмана
}
)
@xSkateboard (https://forum.antichat.xyz/members/2359356/) - тема (https://forum.antichat.xyz/threads/1420069/), обходик (https://forum.antichat.xyz/threads/1478585/)
@MrCreepTon (https://forum.antichat.xyz/members/1988417/) - тема (https://forum.antichat.xyz/threads/1382358/)
Вроде как имеется (не тестировал). Дополнительно можете при авторизации отключить обход, поставив параметр do_bypass = False
Без обхода:
api
=
ArizonaAPI
(
user_agent
=
"your"
,
cookie
=
cookies
,
do_bypass
=
False
)
Пока что API в стадии разработки, поэтому если найдете баги или есть предложения - пишите сюда
Daidem0N
19.07.2023, 15:04
Всех приветствую
Как вы могли догадаться, это API для интернет ресурсов аризоны. Можете потыкать по спойлерам для большей информации
Github (https://github.com/TastyBread123/Arizona-API/) |Релизы (https://github.com/TastyBread123/Arizona-API/releases) |Документация
Не используйте способ с document.cookie в консоли JavaScript. Для этого лучше использовать отдельные расширения для работы с куки. Например, EditThisCookie или Cookie-Editor
Примеры:
Код:
import
arz_api
cookies
=
{
"xf_user"
:
"your"
,
"xf_tfa_trust"
:
"your"
,
"xf_session"
:
"your"
,
"xf_csrf"
:
"your"
,
}
api
=
arz_api
.
ArizonaAPI
(
user_agent
=
"your"
,
cookie
=
cookies
)
user
=
api
.
current_member
print
(
f'Успешно авторизовались!\nИмя пользователя:{user.username}| Звание:{user.user_title}\nАватарка:{ user.avatar}\nСообщений:{user.messages_co unt}| Реакций:{user.reactions_count}\n'
)
category
=
api
.
get_category
(
1865
)
print
(
f"Название:{category.title}({category.id})\n Страниц:{category.pages_count}\n"
)
member
=
api
.
get_member
(
583439
)
print
(
f'Пользователь найден!\nИмя пользователя:{member.username}| Звание:{member.user_title}\nАватарка :{member.avatar}\nСообщений:{member.messa ges_count}| Реакций:{member.reactions_count}\n'
)
thread
=
api
.
get_thread
(
6594323
)
print
(
f'Название:{thread.title}({thread.id})\nА втор темы:{thread.creator.username}\nКатегор ия:{thread.category.title}({thread.category.id}) \nДата создания:{thread.create_date}| Закрыто:{thread.is_closed}'
)
statistic
=
api
.
get_forum_statistic
(
)
print
(
f'\n\nТем:{statistic.threads_count}| Постов:{statistic.posts_count}| Пользователей:{statistic.users_count} \nПоследний пользователь:{statistic.last_register_ member.username}'
)
post
=
api
.
get_post
(
36550558
)
print
(
f'\n\nАвтор:{post.creator.username}({post.cre ator.id})\nID:{post.id}| Дата создания:{post.create_date}\nРазмещ но в теме{post.thread.title}\n\n{post.bb_content}'
)
profile_post
=
api
.
get_profile_post
(
2247012
)
print
(
f"\n\nАвтор:{profile_post.creator.username}({pr ofile_post.creator.id})\nСоздано в{profile_post.create_date}у пользователя{profile_post.profile.user name}({profile_post.profile.id})\n\n{profile_post. bb_content}"
)
Отсюда (https://forum.antichat.xyz/threads/1420069/)
Код:
import
arz_api
cookies
=
{
"xf_user"
:
"your"
,
"xf_tfa_trust"
:
"your"
,
"xf_session"
:
"your"
,
"xf_csrf"
:
"your"
}
api
=
arz_api
.
ArizonaAPI
(
user_agent
=
"your"
,
cookie
=
cookies
)
for
thread_id
in
api
.
get_threads
(
1583
)
:
thread
=
api
.
get_thread
(
thread_id
)
print
(
f"{thread.title}by{thread.creator.username}"
)
Отсюда (https://forum.antichat.xyz/threads/1382358/)
Код:
import
arz_api
cookies
=
{
"xf_user"
:
"your"
,
"xf_tfa_trust"
:
"your"
,
"xf_session"
:
"your"
,
"xf_csrf"
:
"your"
}
try
:
api
=
arz_api
.
ArizonaAPI
(
user_agent
=
"your"
,
cookie
=
cookies
)
print
(
'Success login! Getting last posts in your profile...'
)
for
post_id
in
api
.
current_member
.
get_profile_messages
(
)
:
post
=
api
.
get_profile_post
(
post_id
)
print
(
"\nMessage ID: {0}\nFrom: {1}\nText: {2}\nUnformatted text: {3}"
.
format
(
post
.
creator
.
id
,
post
.
creator
.
username
,
post
.
text_content
,
post
.
bb_content
)
)
except
arz_api
.
IncorrectLoginData
:
print
(
'Invalid login data!'
)
Код:
import
arz_api
cookies
=
{
"xf_user"
:
"your"
,
"xf_tfa_trust"
:
"your"
,
"xf_session"
:
"your"
,
"xf_csrf"
:
"your"
}
api
=
arz_api
.
ArizonaAPI
(
user_agent
=
"your"
,
cookie
=
cookies
)
# ПРИМЕР ДЛЯ PAYSON
jb
=
api
.
send_form
(
45
,
{
'question[531]'
:
'1'
,
# Тип жалобы (1 - на адм / 2 - на красных), в этом примере на адм (в жб на красных id полей различаются)
'question[532]'
:
"Your_Nick"
,
# Ваш ник
'question[533]'
:
"Admin_Nick"
,
# Ник администратора
'question[534]'
:
"ДМ ЗЗ"
,
# Причина наказания
'question[535]'
:
"ВИ ПЛАХИЕ ОПРУ ИЛИ СНИМАЙТИ ОДМЕНА"
,
# Суть жалобы
'question[536]'
:
"https://imgur.com/a/rfFsf"
,
#Скриншот истории наказаний
'question[537]'
:
"https://imgur.com/a/fGFYj"
,
# Скриншот при входе в игру (при бане)
'question[538]'
:
"2023-07-10"
,
# Дата выдачи наказания
'question[539]'
:
'1'
# Готов нести ответственность в случае обмана
}
)
@xSkateboard (https://forum.antichat.xyz/members/2359356/) - тема (https://forum.antichat.xyz/threads/1420069/), обходик (https://forum.antichat.xyz/threads/1478585/)
@MrCreepTon (https://forum.antichat.xyz/members/1988417/) - тема (https://forum.antichat.xyz/threads/1382358/)
Вроде как имеется (не тестировал). Дополнительно можете при авторизации отключить обход, поставив параметр do_bypass = False
Без обхода:
api
=
ArizonaAPI
(
user_agent
=
"your"
,
cookie
=
cookies
,
do_bypass
=
False
)
Пока что API в стадии разработки, поэтому если найдете баги или есть предложения - пишите сюда
Ну нихера, рабочее api
TastyBread123
19.07.2023, 16:06
Update v1.4
- Теперь методы с действиями, которые раньше возвращали True или None, теперь возвращает объект Response, откуда можно узнать код ответа и тд
- В объект Thread (тема) добавлено поле prefix (префикс темы)
- В объект Member (пользователь) добавлен метод ignore() - ignore_member(member_id: int) в ArizonaAPI
- Мелкие исправления
Release (https://github.com/TastyBread123/Arizona-API/releases/tag/v1.4)
Топ, добавь функуцию смены аватарки на форуме
TastyBread123
20.07.2023, 12:04
Топ, добавь функуцию смены аватарки на форуме
Окей, сделаю
Окей, сделаю
Сделай проверку, что бы биоблиотека не крашилась если юзера или поста нету
TastyBread123
20.07.2023, 12:15
Можешь сделать отлов ошибок через try-except
Сделай проверку, что бы биоблиотека не крашилась если юзера или поста нету
Можешь сделать отлов ошибок через try-except
Особо не шарю в этом, можно подробнее
TastyBread123
20.07.2023, 14:34
Особо не шарю в этом, можно подробнее
Пример", language="Python:
# апишка все дела
try: thread = api.get_thread(888)
except: print("Тема не найдена!")
Пример", lang="Python", lang="Python:
# апишка все дела
try: thread = api.get_thread(888)
except: print("Тема не найдена!")
Спасибо
Когда проверка на закреп?)
TastyBread123
20.07.2023, 22:34
Update v1.5
- Изменена механика работы get_threads. Теперь функция возвращает словарь (dict) с ключами 'pins' и 'unpins' - списки (list) закрепленных и незакрепленных тем соответственно. Пример (https://github.com/TastyBread123/Arizona-API/blob/main/examples/category_threads.py)
- Теперь member.avatar возвращает полную ссылку на аватарку
- Уборка в сортире репозитория
Release (https://github.com/TastyBread123/Arizona-API/releases/tag/ver1.5)
TastyBread123
21.07.2023, 00:00
Опять сломал get_post)
пофиксил. Можно скачивать с репозитория и релиза (https://github.com/TastyBread123/Arizona-API/releases/tag/ver1.5)
Как сделать перенос текста на след строку?
https://i.imgur.com/B1VCggn.png
text = f"Доброго времени суток, уважаемый игрок!\nЗакрыто."
api.answer_thread (6695819, text)
TastyBread123
29.07.2023, 18:36
Как сделать перенос текста на след строку?
https://i.imgur.com/B1VCggn.png
\n\n может?
neverlane
29.07.2023, 20:22
Как сделать перенос текста на след строку?
https://i.imgur.com/B1VCggn.png
first linesecond line
Ну уже можно было и асинхронную либу писать🙄🙄🙄
(Несерьёзный доёб, Красава, чел)
TastyBread123
05.08.2023, 01:38
Update v1.6
- Добавлены более подробные комментарии ко всем методам
- Новые методы в ArizonaAPI: react_thread(thread_id: int, reaction_id: int) - поставить реакцию на тему, edit_thread(thread_id: int, message_html: str) - изменить текст темы
- Новые методы в объекте CurrentMember: edit_avatar(upload_photo: str) - изменить автарку, delete_avatar() - удалить аватарку (спасибо https://www.blast.hk/members/502833 (https://forum.antichat.xyz/members/2422833/) за функцию, а то я бы и не вспомнил :D)
- Теперь в методах react всех обхектов по умолчанию ставится реакция 1 id
- В некоторых методах изменен рекомендуемый тип данных с int на bool. Подробнее в документации
- Незначительные изменения
Release (https://github.com/TastyBread123/Arizona-API/releases/tag/v1.6)
Ну уже можно было и асинхронную либу писать🙄🙄🙄
(Несерьёзный доёб, Красава, чел)
Вообще, была такая идея, поэтому почему бы и нет)
Осталось лишь разобраться, как же она работает в пайтоне 😅
Вообще, была такая идея, поэтому почему бы и нет)
Осталось лишь разобраться, как же она работает в пайтоне 😅
Если интересует идея совместной работы над асинк библиотекой, то пиши в тг: @g_syntax
TastyBread123
17.08.2023, 15:16
Теперь пакет доступен к установке через pip:
pip install arz-api
Теперь пакет доступен к установке через pip:
pip install arz-api
Ого, крут
Теперь пакет доступен к установке через pip:
pip install arz-api
Брат спрошу заранее перед тем как залезть, есть внутри обход ddos протекта аризонки ?
А всё родной открыл глаза увидел
Бро сделай что бы был рендер жалоб на админов по ключевому запросу ну например ник Carl и что бы выписывались жб в список и ссылки на них, я делал такое впринципе труда не составит
Update 1.3.1
- Исправлена ошибка с методом get_post
Release (https://github.com/TastyBread123/ArizonaForum-API/releases/tag/v1.3.1)
TastyBread123
14.09.2023, 15:14
Бро сделай что бы был рендер жалоб на админов по ключевому запросу ну например ник Carl и что бы выписывались жб в список и ссылки на них, я делал такое впринципе труда не составит
У меня именно библиотека, а не готовый скрипт
Библиоте́ка в программировании — сборник подпрограмм или объектов, используемых для разработки программного обеспечения
TastyBread123
08.11.2023, 23:42
Update v1.7
- Улучшена структура API
- В current_member исправлен баг, при котором API не могло найти ID пользователя, если у него не было автарки
Spanishmax
01.02.2024, 22:46
1706813166852.pngSpanishmax · 1 Фев 2024 в 21:46' data-fancybox="lb-post-1450286" data-lb-caption-extra-html="" data-lb-sidebar-href="" data-single-image="1" data-src="https://www.blast.hk/attachments/230805/" style="cursor: pointer;" title="1706813166852.png">
https://forum.antichat.xyz/attachments/28450286/img_bd865b84f2.png
arz-api дополнительно ставит dukpy, который требует 14 версию MS Visual C++
Не совсем понял, из всего этого прекрасного списка - мне что нужно?
1706813153007.pngSpanishmax · 1 Фев 2024 в 21:46' data-fancybox="lb-post-1450286" data-lb-caption-extra-html="" data-lb-sidebar-href="" data-single-image="1" data-src="https://www.blast.hk/attachments/230804/" style="cursor: pointer;" title="1706813153007.png">
https://forum.antichat.xyz/attachments/28450286/img_e7f735babd.png
TastyBread123
01.02.2024, 23:36
arz-api дополнительно ставит dukpy, который требует 14 версию MS Visual C++
Не совсем понял, из всего этого прекрасного списка - мне что нужно?
1706816190330.pngTastyBread123 · 1 Фев 2024 в 22:36' data-fancybox="lb-post-1450299" data-lb-caption-extra-html="" data-lb-sidebar-href="" data-single-image="1" data-src="https://www.blast.hk/attachments/230809/" style="cursor: pointer;" title="1706816190330.png">
https://forum.antichat.xyz/attachments/28450299/img_7c554d7b1f.png
Ascerman
06.04.2024, 20:35
image.pngAscerman · 6 Апр 2024 в 19:35' data-fancybox="lb-post-1480020" data-lb-caption-extra-html="" data-lb-sidebar-href="" data-single-image="1" data-src="/proxy.php?image=https%3A%2F%2Fi.ibb.co%2Fx3fw4V1%2 Fimage.png&hash=82e6a4ce43ab23ce778a052f59b8ac77" style="cursor: pointer;" title="image.png">
https://i.ibb.co/x3fw4V1/image.png
Ошибка возникала при изменении префикса темы, и я смог исправить ее, изменив код файла api.py. Возможно, это было связано с моей тупостью, но я точно этого не знаю. Ниже предоставлен скриншот, на котором показаны мои изменения в файле api.py
image.pngAscerman · 6 Апр 2024 в 19:35' data-fancybox="lb-post-1480020" data-lb-caption-extra-html="" data-lb-sidebar-href="" data-single-image="1" data-src="/proxy.php?image=https%3A%2F%2Fi.ibb.co%2FStkRnqG%2 Fimage.png&hash=dd77eda499db8beafa30a361fbc1503c" style="cursor: pointer;" title="image.png">
https://i.ibb.co/StkRnqG/image.png
TastyBread123
06.04.2024, 23:17
https://i.ibb.co/x3fw4V1/image.png
Ошибка возникала при изменении префикса темы, и я смог исправить ее, изменив код файла api.py. Возможно, это было связано с моей тупостью, но я точно этого не знаю. Ниже предоставлен скриншот, на котором показаны мои изменения в файле api.py
https://i.ibb.co/StkRnqG/image.png
да, моя ошибка, сейчас исправлю
да, моя ошибка, сейчас исправлю
Подскажи, есть апдейт по этому багу? Все еще актуальный.
TastyBread123
26.04.2024, 23:31
Подскажи, есть апдейт по этому багу? Все еще актуальный.
Release Update 1.7.1 · TastyBread123/Arizona-API (https://github.com/TastyBread123/Arizona-API/releases/tag/v1.7.1)
Исправлен баг в методе edit_thread_info
github.com
Планируешь добавить возможность получить покраску пользователя в объекте Member?
TastyBread123
02.05.2024, 01:12
Update v1.8
- Добавлен метод bookmark в Post (в главном api.py метод bookmark_post(post_id))
- В каждый объект (кроме Other) был добавлен служебный метод get_url()
- В объект Member было добавлено поле roles со списком покрасок пользователя (тип list)
- В каждый метод на получения объекта (например, get_thread) был добавлена проверка на существование. Если данного объекта нет, то возвращается None
- В объекта Catrgory добавлено поле parent_category_id (id предыдщей категории)
Release (https://github.com/TastyBread123/Arizona-API/releases/tag/v1.8) | PyPI
Fix v1.8.1
- Исправлен баг в методе get_post, связанный с аргументами объекта Member
Release (https://github.com/TastyBread123/Arizona-API/releases/tag/v1.8.1)| PyPI
self.api.edit_thread_info(thread.id,thread.title,1 5)
Этот код почему-то по мимо установки префикса еще закрывает и открепляет/закрепляет тему.
TastyBread123
02.05.2024, 21:18
Fix v1.8.2
- В метод edit_thread_info добавлены новые аргументы: sticky - статус закрепа; open - статус открыто/закрыто
Release (https://github.com/TastyBread123/Arizona-API/releases/tag/v1.8.2)| PyPI
Fix v1.8.2
- В метод edit_thread_info добавлены новые аргументы: sticky - статус закрепа; open - статус открыто/закрыто
Release (https://github.com/TastyBread123/Arizona-API/releases/tag/v1.8.2)| PyPI
Я похож на душнилу, но вне зависимости от параметров метод закрепляет тему и оставляет её открытой)
Ну и префикс не применяется
TastyBread123
04.05.2024, 21:19
Global Update 2.0
- Увеличена скорость работы методов get_thread(), get_category(), get_member(), get_profile_messages(), get_threads(), get_thread_posts(), get_categories() в 2-3 раза
- Все методы get_url() превращены в поля url и теперь в них учитывается переменная MAIN_URL
- Удалены методы объекта Thread pin() и close(). Теперь их функцию выполняет метод edit_info() - API: edit_thread_info()
- Поле parent_category_id в объекте Category заменено методом get_parent_category() (get_parent_category_of_category() в API)
- Поле category в объекте Thread заменено методом get_category() (get_thread_category в API)
- Исправлен баг с методом edit_info() - с открытием и закреплением темы (https://www.blast.hk/threads/182141/post-1490843 (https://forum.antichat.xyz/threads/1482141/post-1490843))
- Обновлены некоторые примеры
Release (https://github.com/TastyBread123/Arizona-API/releases/tag/v2.0)| PyPI
Global Update 2.0
- Увеличена скорость работы методов get_thread(), get_category(), get_member(), get_profile_messages(), get_threads(), get_thread_posts(), get_categories() в 2-3 раза
- Все методы get_url() превращены в поля url и теперь в них учитывается переменная MAIN_URL
- Удалены методы объекта Thread pin() и close(). Теперь их функцию выполняет метод edit_info() - API: edit_thread_info()
- Поле parent_category_id в объекте Category заменено методом get_parent_category() (get_parent_category_of_category() в API)
- Поле category в объекте Thread заменено методом get_category() (get_thread_category в API)
- Исправлен баг с методом edit_info() - с открытием и закреплением темы (https://www.blast.hk/threads/182141/post-1490843 (https://forum.antichat.xyz/threads/1482141/post-1490843))
- Обновлены некоторые примеры
Release (https://github.com/TastyBread123/Arizona-API/releases/tag/v2.0)| PyPI
edit_thread_info() не работает, если передать title=None
Так-же слетела кодировка, теперь при получении к примеру названии темы в названии которой есть "" вместо них в thread.title "
Как-то через API можно получить список сообщений в теме?
TastyBread123
07.05.2024, 17:51
Как-то через API можно получить список сообщений в теме?
arz_api.api API documentation
Fix Update v2.0.1
- В методе edit_thread_info() теперь title обязательный аргумент
- Исправлен баг с префиксом в названии темы
- Исправлены символы типа "quot;" в названии темы, категории или имени пользователя
- Изменен комментарий в edit_thread_info()
Release (https://github.com/TastyBread123/Arizona-API/releases/tag/v2.0.1)| PyPI
tripple sixx
07.05.2024, 22:06
добавь метод для поиска по форуму
TastyBread123
07.05.2024, 22:15
добавь метод для поиска по форуму
Будет добавлено когда-нибудь)
alex.morozov
14.05.2024, 18:53
тема актуальная?
TastyBread123
14.05.2024, 21:23
тема актуальная?
ну да, ласт обнова в мае же
alex.morozov
14.05.2024, 21:46
ну да, ласт обнова в мае же
можешь дать свой вк? есть о чем поговорить
Как насчет добавления необязательной фильтрации, конкретно говорю сейчас о методе get_threads
К примеру, получить только открытые темы или с определенным префиксом
Думаю, где-то еще можно подобные сделать, но это то, что использовал бы лично я
Получать жалобы со всей первой страницы, бегать по ним циклом, а по итогу там вовсе не будет жалоб нужных тебе или одна-две - как-то не оптимально по затрате ресурсов получается.
TastyBread123
15.05.2024, 14:03
Как насчет добавления необязательной фильтрации, конкретно говорю сейчас о методе get_threads
К примеру, получить только открытые темы или с определенным префиксом
Думаю, где-то еще можно подобные сделать, но это то, что использовал бы лично я
Получать жалобы со всей первой страницы, бегать по ним циклом, а по итогу там вовсе не будет жалоб нужных тебе или одна-две - как-то не оптимально по затрате ресурсов получается.
https://forum.antichat.xyz/attachments/28496749/img_73f5431b1e.png
Могу сделать только такие фильтры, иначе будет то же самое, что ты и написал, только в самой апишке. Смысла в этом нет
При использовании скрипта на странице профиля отображается.
Активность Только что · Просматривает страницу помощи
alex.morozov
22.06.2024, 17:32
При использовании скрипта на странице профиля отображается.
Активность Только что · Просматривает страницу помощи
то есть по твоему должно не показывать?
TastyBread123
22.06.2024, 22:59
При использовании скрипта на странице профиля отображается.
Активность Только что · Просматривает страницу помощи
мб если посмотреть код, то будет ясно, что он оттуда получает токен?
мб если посмотреть код, то будет ясно, что он оттуда получает токен?
По идеи только при:
Код:
api = arz_api.ArizonaAPI(user_agent="your", cookie=cookies)
У меня по крону проверяется раздел, авторизация вызывается только при запуске проекта(раз в сутки рестарт). Отображается эта штука каждый раз, когда скрипт в "ожидании" следующей проверки.
+ отмечаются уведомления прочитанными все :(
TastyBread123
24.06.2024, 22:58
+ отмечаются уведомления прочитанными все :(
насчет этого хз, не должно такого происходить
По идеи только при:
-, CSRF токен получается при каждом действии, тк через n времени он устаревает (могу предположить что в течение 30 минут/часа)
choco.pay
04.07.2024, 05:04
Как отправить сообщение в теме?
TastyBread123
04.07.2024, 13:38
Как отправить сообщение в теме?
arz_api.api API documentation
choco.pay
04.07.2024, 16:51
arz_api.api API documentation
Cпасибки
choco.pay
31.07.2024, 13:25
Как в get_thread получить префиксы темы? Вот такие:
https://forum.antichat.xyz/attachments/28524964/img_b7dc234535.png
Как в get_thread получить префиксы темы? Вот такие:
thread = api.get_thread(8467982)
print(thread.prefix)
choco.pay
21.08.2024, 12:38
Как получить все сообщения из темы?
TastyBread123
21.08.2024, 14:40
Как получить все сообщения из темы?
Код:
thread = api.get_thread(THREAD_ID)
threads = []
for page in range(1, thread.pages_count + 1):
# Если нужны просто айдишники
threads += thread.get_posts(page)
# если нужны еще сами объекты
posts = thread.get_posts(page)
for post in posts:
threds.append(api.get_post(post))
как то так примерно
choco.pay
16.11.2024, 14:59
Как получить только открытые незакрепленные темы?
Mercyline
18.11.2024, 01:10
как получить куки?
cookies = {"xf_user": "your",
"xf_tfa_trust": "your",
"xf_session": "your"
}
chromiusj
18.11.2024, 01:12
как получить куки?
cookies = {"xf_user": "your",
"xf_tfa_trust": "your",
"xf_session": "your"
}
вы че рофлите
1731877940887.pngchromiusj · 18 Ноя 2024 в 00:12' data-fancybox="lb-post-1561956" data-lb-caption-extra-html="" data-lb-sidebar-href="" data-single-image="1" data-src="https://www.blast.hk/attachments/257439/" style="cursor: pointer;" title="1731877940887.png">
https://forum.antichat.xyz/attachments/28561956/img_2fb971f357.png
TastyBread123
19.11.2024, 10:57
Как получить только открытые незакрепленные темы?
api.get_threads(category, page)['unpin']
fakelag28
31.01.2025, 23:04
Изменение текста в теме/посте не работает, покрас 3 лвла есть, сам могу менять, через библиотеку не получается.
Python:
post_structure
=
api
.
get_post
(
37470102
)
post_structure
.
edit
(
"123"
)
TastyBread123
01.02.2025, 11:12
Изменение текста в теме/посте не работает, покрас 3 лвла есть, сам могу менять, через библиотеку не получается.
Python:
post_structure
=
api
.
get_post
(
37470102
)
post_structure
.
edit
(
"123"
)
есть какие то ошибки?
fakelag28
01.02.2025, 19:52
есть какие то ошибки?
-
TastyBread123
02.02.2025, 11:56
-
попробуй в какой то html файл записать post_structure.content
nikusyaxxs
08.02.2025, 07:04
Почему если страница темы >1, то начинает некорректно выводить содержимое заголовка?
https://forum.antichat.xyz/attachments/28584469/img_4ca8e1e41a.png
TastyBread123
08.02.2025, 12:04
Почему если страница темы >1, то начинает некорректно выводить содержимое заголовка?
скинь код, посмотрю
nikusyaxxs
08.02.2025, 13:07
скинь код, посмотрю
need 4lvl paint:
[CODE]
page
=
1
def
get_threads_on_page
(
page
)
:
threads
=
api
.
get_threads
(
3434
,
page
)
for
i
in
threads
[
"unpins"
]
:
thread
=
api
.
get_thread
(
i
)
print
(
f'Server:{thread.prefix}| Author:{thread.title}| By:{thread.creator.username}'
)
while
(
page
fakelag28
21.02.2025, 14:26
попробуй в какой то html файл записать post_structure.content
Нашёл решение проблемы:
При редактировании обязательно нужно указывать заголовок темы, даже если редактируется пост.
Python:
def
edit_post
(
self
,
post_id
:
int
,
message_html
:
str
)
-
>
Response
:
"""Отредактировать сообщение
Attributes:
post_id (int): ID сообщения
message_html (str): Новый текст сообщения. Рекомендуется использование HTML
Returns:
Объект Response модуля requests
"""
title_of_thread_post
=
self
.
get_post
(
post_id
)
.
thread
.
title
return
self
.
session
.
post
(
f"{MAIN_URL}/posts/{post_id}/edit"
,
{
"title"
:
title_of_thread_post
,
"message_html"
:
message_html
,
"message"
:
message_html
,
"_xfToken"
:
self
.
token
}
)
TastyBread123
25.02.2025, 16:22
Нашёл решение проблемы:
При редактировании обязательно нужно указывать заголовок темы, даже если редактируется пост.
Python:
def
edit_post
(
self
,
post_id
:
int
,
message_html
:
str
)
-
>
Response
:
"""Отредактировать сообщение
Attributes:
post_id (int): ID сообщения
message_html (str): Новый текст сообщения. Рекомендуется использование HTML
Returns:
Объект Response модуля requests
"""
title_of_thread_post
=
self
.
get_post
(
post_id
)
.
thread
.
title
return
self
.
session
.
post
(
f"{MAIN_URL}/posts/{post_id}/edit"
,
{
"title"
:
title_of_thread_post
,
"message_html"
:
message_html
,
"message"
:
message_html
,
"_xfToken"
:
self
.
token
}
)
благодарю
nikusyaxxs
28.02.2025, 17:29
Почему если страница темы >1, то начинает некорректно выводить содержимое заголовка?
Решил это изменением логики(?) получения названия темы
Python:
def
get_thread
(
self
,
thread_id
:
int
)
:
request
=
self
.
session
.
get
(
f"{MAIN_URL}/threads/{thread_id}/page-1?_xfResponseType=json&_xfToken={self.token}"
)
.
json
(
)
if
request
[
'status'
]
==
'error'
:
return
None
if
request
.
get
(
'redirect'
)
is
not
None
:
return
self
.
get_thread
(
request
[
'redirect'
]
.
strip
(
MAIN_URL
)
.
split
(
'/'
)
[
content
=
unescape
(
request
[
'html'
]
[
'content'
]
)
content_h1
=
unescape
(
request
[
'html'
]
[
'h1'
]
)
content
=
BeautifulSoup
(
content
,
'lxml'
)
content_h1
=
BeautifulSoup
(
content_h1
,
'lxm
creator_id
=
content
.
find
(
'a'
,
{
'class'
:
'username'
}
)
try
:
creator
=
self
.
get_member
(
int
(
creator_id
[
'data-user-id'
]
)
)
except
:
creator
=
Member
(
self
,
int
(
creator_id
[
'data-user-id'
]
)
,
content
.
find
(
'a'
,
{
'class'
:
'username'
}
)
.
text
,
None
,
None
,
None
,
None
,
None
,
None
)
create_date
=
int
(
content
.
find
(
'time'
)
[
'data-time'
]
)
try
:
prefix
=
content_h1
.
find
(
'span'
,
{
'class'
:
'label'
}
)
.
text
title
=
content_h1
.
text
.
strip
(
)
.
replace
(
prefix
,
""
)
.
strip
(
)
TastyBread123
02.03.2025, 22:57
Update v2.1
- Добавлены несколько комментариев к методам
- Fix метода edit_post (от https://www.blast.hk/members/488052/ (https://forum.antichat.xyz/members/2408052/))
- Fix получения заголовка в get_thread (https://www.blast.hk/members/546617/ (https://forum.antichat.xyz/members/2466617/))
Release (https://github.com/TastyBread123/Arizona-API/releases/tag/v2.1) | PyPI
Есть какой-то вариант получить сам ББКод ответа через get_post()
Сейчас при попытке изменить и вставить содержимое полученное от Post.bb_content - в тему вставляется сырой HTML код вместе с разметкой.
Ломаются любые стили, хайды, реплаи и т.п.
fakelag28
09.03.2025, 17:45
Есть какой-то вариант получить сам ББКод ответа через get_post()
Сейчас при попытке изменить и вставить содержимое полученное от Post.bb_content - в тему вставляется сырой HTML код вместе с разметкой.
Ломаются любые стили, хайды, реплаи и т.п.
Python:
def
get_post_bbcode
(
self
,
thread_id
:
int
,
post_id
:
int
)
-
>
str
:
"""Получить BB-код из HTML-содержимого поста
Returns:
str: BB-код поста
"""
params
=
{
'_xfRequestUri'
:
f'/threads/{thread_id}/'
,
'_xfWithData'
:
1
,
'_xfToken'
:
self
.
token
,
'_xfResponseType'
:
'json'
}
response
=
self
.
session
.
get
(
f"{MAIN_URL}/posts/{post_id}/edit"
,
params
=
params
)
html_content
=
response
.
json
(
)
.
get
(
'html'
,
{
}
)
.
get
(
'content'
,
''
)
if
not
html_content
:
return
''
data
=
{
'_xfResponseType'
:
'json'
,
'_xfRequestUri'
:
f'/threads/{thread_id}/'
,
'_xfWithData'
:
1
,
'_xfToken'
:
self
.
token
,
'html'
:
html_content
}
response
=
self
.
session
.
post
(
f"{MAIN_URL}/index.php?editor/to-bb-code"
,
data
=
data
)
return
response
.
json
(
)
.
get
(
'bbCode'
,
''
)
Python:
bbcode
=
api
.
get_post_bbcode
(
9383346
,
50815999
)
print
(
bbcode
)
Но есть некоторые подводные камни:
1. Нужна покраска 3+ уровня, дабы /edit сработал
2. Возвращает HTML контент + BB код + Лишний мусор (Кнопки сохранить например)
https://i.imgur.com/DoVupMf.png
choco.pay
31.03.2025, 17:58
Как сделать уведомления в консоль при созданиях новой темы в разделе?
TastyBread123
31.03.2025, 22:52
Как сделать уведомления в консоль при созданиях новой темы в разделе?
каждые 2-3 минуты вызывать метод на поиск тем в категории, сохранять где то в массиве, и если при следующем вызове появляются новые иды, значит это новая тема (дополнительно можно сравнивать еще и дату создания)
Метод поиска по форуму планируется универсальный?
С строкой, разделом в котором искать, от кого сообщение.
choco.pay
01.04.2025, 14:53
каждые 2-3 минуты вызывать метод на поиск тем в категории, сохранять где то в массиве, и если при следующем вызове появляются новые иды, значит это новая тема (дополнительно можно сравнивать еще и дату создания)
Спасибо!
TastyBread123
01.04.2025, 23:26
Метод поиска по форуму планируется универсальный?
С строкой, разделом в котором искать, от кого сообщение.
как будет время, скорее всего да
Теперь можно получить последнюю активность пользователя
member_object.py:
def
__init__
(
self
,
API
:
'ArizonaAPI'
,
id
:
int
,
username
:
str
,
user_title
:
str
,
avatar
:
str
,
roles
:
list
,
messages_count
:
int
,
reactions_count
:
int
,
trophies_count
:
int
,
activity
:
str
)
-
>
None
:
self
.
API
=
API
self
.
id
=
id
"""**ID пользователя**"""
self
.
username
=
username
"""**Имя пользователя**"""
self
.
user_title
=
user_title
"""**Звание пользователя**"""
self
.
avatar
=
avatar
"""**Ссылка на аватарку пользователя**"""
self
.
roles
=
roles
"""Роль пользователя на форуме ('покраска')"""
self
.
activity
=
activity
"""**Активность пользователя на форуме**"""
self
.
messages_count
=
messages_count
"""**Количество сообщений в счетчике**"""
self
.
reactions_count
=
reactions_count
"""**Количество реакций в счетчике**"""
self
.
trophies_count
=
trophies_count
"""**Количество баллов в счетчике**"""
self
.
url
=
f"{MAIN_URL}/members/{self.id}/"
"""Ссылка на объект"""
api.py:
def
get_member
(
self
,
user_id
:
int
)
-
>
Member
:
"""Найти пользователя по ID (возвращает либо Member, либо None (если профиль закрыт / не существует))"""
request
=
self
.
session
.
get
(
f"{MAIN_URL}/members/{user_id}?_xfResponseType=json&_xfToken={self.token}"
)
.
json
(
)
if
request
[
'status'
]
==
'error'
:
return
None
content
=
unescape
(
request
[
'html'
]
[
'content'
]
)
content
=
BeautifulSoup
(
content
,
'lxml'
)
username
=
unescape
(
request
[
'html'
]
[
'title'
]
)
activity
=
content
.
find
(
'dd'
,
{
'dir'
:
'auto'
}
)
.
get_text
(
strip
=
False
)
.
strip
(
'\n'
)
roles
=
[
]
for
i
in
content
.
find
(
'div'
,
{
'class'
:
'memberHeader-banners'
}
)
.
children
:
if
i
.
text
!=
'\n'
:
roles
.
append
(
i
.
text
)
try
:
user_title
=
content
.
find
(
'span'
,
{
'class'
:
'userTitle'
}
)
.
text
except
AttributeError
:
user_title
=
None
try
:
avatar
=
MAIN_URL
+
content
.
find
(
'a'
,
{
'class'
:
'avatar avatar--l'
}
)
[
'href'
]
except
TypeError
:
avatar
=
None
messages_count
=
int
(
content
.
find
(
'a'
,
{
'href'
:
f'/search/member?user_id={user_id}'
}
)
.
text
.
strip
(
)
.
replace
(
','
,
''
)
)
reactions_count
=
int
(
content
.
find
(
'dl'
,
{
'class'
:
'pairs pairs--rows pairs--rows--centered'
}
)
.
find
(
'dd'
)
.
text
.
strip
(
)
.
replace
(
','
,
''
)
)
trophies_count
=
int
(
content
.
find
(
'a'
,
{
'href'
:
f'/members/{user_id}/trophies'
}
)
.
text
.
strip
(
)
.
replace
(
','
,
''
)
)
return
Member
(
self
,
user_id
,
username
,
user_title
,
avatar
,
roles
,
messages_count
,
reactions_count
,
trophies_count
,
activity
)
monty capone
18.05.2025, 14:46
Снимок экрана 2025-05-18 154543.pngmonty capone · 18 Май 2025 в 13:46' data-fancybox="lb-post-1608200" data-lb-caption-extra-html="" data-lb-sidebar-href="" data-single-image="1" data-src="https://www.blast.hk/attachments/270493/" style="cursor: pointer;" title="Снимок экрана 2025-05-18 154543.png">
https://forum.antichat.xyz/attachments/28608200/img_5152097967.png
как это фиксить?
TastyBread123
19.05.2025, 00:07
как это фиксить?
pip install aiohttp_socks
Привет, с чем может быть связана проблема? куки указанны верно, вот до сегодня все работало прекрасно:
1747847335198.pngKrakowi · 21 Май 2025 в 20:09' data-fancybox="lb-post-1608956" data-lb-caption-extra-html="" data-lb-sidebar-href="" data-single-image="1" data-src="https://www.blast.hk/attachments/270688/" style="cursor: pointer;" title="1747847335198.png">
https://forum.antichat.xyz/attachments/28608956/img_c3f10a2831.png
TastyBread123
22.05.2025, 19:29
Привет, с чем может быть связана проблема? куки указанны верно, вот до сегодня все работало прекрасно:
попробуй куки обновить
TastyBread123
06.09.2025, 15:17
Update v2.2
- Добавлена поддержка последней версии форума
- Возвращены методы pin_thread, close_thread (в том числе и методы close, pin в объект Thread)
- Подправлены TypeCheck и комментарии
- Обновлён requirements.txt
- Метод get_threads() в глобальном api переименован в get_category_threads()
- Изменен принцип работы get_category_threads(), более подробно в комментарии к методу
Release (https://github.com/TastyBread123/Arizona-API/releases/tag/v2.2.0) | PyPI
invalid literal for int() with base 10: '12:47'
https://forum.antichat.xyz/attachments/28641480/img_a9ef21d2a6.png
пкд крашит как бы не использовал, как фиксить?
chromiusj
20.10.2025, 22:41
invalid literal for int() with base 10: '12:47'
пкд крашит как бы не использовал, как фиксить?
попробуй это,может тут пофикшено
Исходник - Arizona Forum API Async (https://forum.antichat.xyz/threads/1534227/)
Arizona Forum API Async | NodeJS версия Асинхронная Python библиотека для взаимодействия с форумом Arizona RP (forum.arizona-rp.com) без необходимости получения API ключа. Эта библиотека предоставляет современный, асинхронный интерфейс для работы с форумом Arizona RP. Это расширенная и...
www.blast.hk
Ну погоди!
09.01.2026, 01:16
invalid literal for int() with base 10: '12:47'
пкд крашит как бы не использовал, как фиксить?
конечно и поздний ответ, но можешь посмотреть в целом пул реквест мой на фикс этой темы https://github.com/TastyBread123/Arizona-API/pull/1
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot