hh-applicant-tool 0.2.1__py3-none-any.whl → 0.2.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of hh-applicant-tool might be problematic. Click here for more details.

@@ -37,11 +37,11 @@ class ApiError(Exception):
37
37
  def response_headers(self) -> CaseInsensitiveDict:
38
38
  return self._response.headers
39
39
 
40
- def __getattr__(self, name: str) -> Any:
41
- try:
42
- return self._raw[name]
43
- except KeyError as ex:
44
- raise AttributeError(name) from ex
40
+ # def __getattr__(self, name: str) -> Any:
41
+ # try:
42
+ # return self._raw[name]
43
+ # except KeyError as ex:
44
+ # raise AttributeError(name) from ex
45
45
 
46
46
  def __str__(self) -> str:
47
47
  return str(self._raw)
@@ -58,7 +58,7 @@ class ClientError(ApiError):
58
58
  class BadRequest(ClientError):
59
59
  @property
60
60
  def limit_exceeded(self) -> bool:
61
- return any(x["value"] == "limit_exceeded" for x in self.errors)
61
+ return any(x["value"] == "limit_exceeded" for x in self._raw["errors"])
62
62
 
63
63
 
64
64
  class Forbidden(ClientError):
@@ -1,4 +1,4 @@
1
- DEFAULT_USER_AGENT = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36"
1
+ DEFAULT_USER_AGENT = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36"
2
2
  ANDROID_CLIENT_ID = (
3
3
  "HIOMIAS39CA9DICTA7JIO64LQKQJF5AGIK74G9ITJKLNEDAOH5FHS5G1JI7FOEGD"
4
4
  )
@@ -7,7 +7,7 @@ from pathlib import Path
7
7
  from threading import Lock
8
8
  from typing import Any
9
9
 
10
- print_err = partial(print, file=sys.stderr)
10
+ print_err = partial(print, file=sys.stderr, flush=True)
11
11
 
12
12
 
13
13
  class AttrDict(dict):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: hh-applicant-tool
3
- Version: 0.2.1
3
+ Version: 0.2.2
4
4
  Summary:
5
5
  Author: Senior YAML Developer
6
6
  Author-email: yamldeveloper@proton.me
@@ -8,13 +8,22 @@ Requires-Python: >=3.10,<4.0
8
8
  Classifier: Programming Language :: Python :: 3
9
9
  Classifier: Programming Language :: Python :: 3.10
10
10
  Classifier: Programming Language :: Python :: 3.11
11
+ Classifier: Programming Language :: Python :: 3.12
11
12
  Requires-Dist: prettytable (>=3.6.0,<4.0.0)
12
13
  Requires-Dist: requests (>=2.28.2,<3.0.0)
13
14
  Description-Content-Type: text/markdown
14
15
 
15
16
  # HH Applicant Tool
16
17
 
17
- ![Publish to PyPI](https://github.com/s3rgeym/hh-applicant-tool/actions/workflows/publish.yml/badge.svg) [![PyPi Version](https://img.shields.io/pypi/v/hh-applicant-tool)](https://img.shields.io/pypi/v/hh-applicant-tool) [![Python Versions](https://img.shields.io/pypi/pyversions/hh-applicant-tool.svg)](https://img.shields.io/pypi/pyversions/hh-applicant-tool.svg) [![PyPI - Downloads](https://img.shields.io/pypi/dm/hh-applicant-tool)](https://img.shields.io/pypi/dm/hh-applicant-tool)
18
+ > ! Наложен мораторий на доработки/переработки. Разработка будет возобновлена после 10 звезд 💫 Вы, блять, сучары 7000 раз эту хуйню скачали и всего 5 звезд поставили. Просто охуеть! Сколько нужно скачек хотя бы ради 50 звезд?
19
+ > > Да в пизду это приложение я им не пользуюсь. Ищите работу заграницей. Нахуй вам hh? Эта страна еще 12 лет правления любителя шагов доброй лоли не выдержит
20
+
21
+ ![Publish to PyPI](https://github.com/s3rgeym/hh-applicant-tool/actions/workflows/publish.yml/badge.svg)
22
+ [![PyPi Version](https://img.shields.io/pypi/v/hh-applicant-tool)]()
23
+ [![Python Versions](https://img.shields.io/pypi/pyversions/hh-applicant-tool.svg)]()
24
+ [![GitHub code size in bytes](https://img.shields.io/github/languages/code-size/s3rgeym/hh-applicant-tool)]()
25
+ [![PyPI - Downloads](https://img.shields.io/pypi/dm/hh-applicant-tool)]()
26
+ [![Total Downloads](https://static.pepy.tech/badge/hh-applicant-tool)]()
18
27
 
19
28
  Утилита для автоматизации действий на HH.RU таких как рассылка откликов на подходящие вакансии и обновление всех резюме.
20
29
 
@@ -119,7 +128,7 @@ https://hh.ru/employer/1918903
119
128
  | **update-resumes** | Обновить все резюме. Аналогично нажатию кнопки «Обновить дату». |
120
129
  | **apply-similar** | Откликнуться на все подходящие вакансии. Лимит = 200 в день |
121
130
  | **clear-negotiations** | Удаляет отказы и отменяет заявки, которые долго висят |
122
- | **call-api** | Вызов произвольного метода API с вводом результата. |
131
+ | **call-api** | Вызов произвольного метода API с выводом результата. |
123
132
  | **refresh-token** | Обновляет access_token. |
124
133
 
125
134
  Для начала нужно добавить обработчик протокола `hhandroid`, который используется Android-приложением для усложнения жизни честным автоматизаторам:
@@ -2,9 +2,9 @@ hh_applicant_tool/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU
2
2
  hh_applicant_tool/__main__.py,sha256=cwKJAAML0RRKT9Qbzcwf07HHcuSd8oh7kx4P1apndWQ,84
3
3
  hh_applicant_tool/api/__init__.py,sha256=kgFSHibRaAugN2BA3U1djEa20qgKJUUVouwJzjEB0DU,84
4
4
  hh_applicant_tool/api/client.py,sha256=z_YMsd5zL4-1_aIbkEKqm_1m_mZkm3BMxlAQuCoNj2Y,7040
5
- hh_applicant_tool/api/errors.py,sha256=i6M44r50Aq81g03ivmhACUFGSEgt57TQj7Kef8Kc8d0,1704
5
+ hh_applicant_tool/api/errors.py,sha256=0SoWKnsSUA0K2YgQA8GwGhe-pRMwtfK94MR6_MgbORQ,1722
6
6
  hh_applicant_tool/color_log.py,sha256=gN6j1Ayy1G7qOMI_e3WvfYw_ublzeQbKgsVLhqGg_3s,823
7
- hh_applicant_tool/constants.py,sha256=0gBTRqnWWJghPMSU1o_ah4EksoPII2-WUwBglrPl8gk,512
7
+ hh_applicant_tool/constants.py,sha256=EPtdv-60NSMUpYOUcPR2ZnLQ2P_rxrPuvbOqATw9w8w,512
8
8
  hh_applicant_tool/main.py,sha256=Gzk1K1jJpO7aazgdXtXAgBhkfFtrteBRx895V5lf07E,3016
9
9
  hh_applicant_tool/operations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
10
  hh_applicant_tool/operations/add_handler.py,sha256=DNlCILmkCipe95uBlkecXqUZQC39MiSAtsMhQopyEsI,1680
@@ -17,8 +17,8 @@ hh_applicant_tool/operations/refresh_token.py,sha256=hYTmzBzJFSsb-LDO2_w0Y30WVWs
17
17
  hh_applicant_tool/operations/update_resumes.py,sha256=FKtwEL7i0vaOxLEn1nARi72SuMYB5VjN6Fihe6rlt-Y,1196
18
18
  hh_applicant_tool/operations/whoami.py,sha256=kdLQ_FjYzpJPKxFlocxf7vgXhW1zocb0bd5IAWmsQuA,861
19
19
  hh_applicant_tool/types.py,sha256=q3yaIcq-UOkPzjxws0OFa4w9fTty-yx79_dic70_dUM,843
20
- hh_applicant_tool/utils.py,sha256=e8AjyEGqyaX0W69NmxkpswSdWh_Mianz66cjb3aee1I,1335
21
- hh_applicant_tool-0.2.1.dist-info/METADATA,sha256=a-AVcCKoCCjCPzkPFTg_9QTWiYJAU6fy_Obh-SV_X1Y,14840
22
- hh_applicant_tool-0.2.1.dist-info/WHEEL,sha256=kLuE8m1WYU0Ig0_YEGrXyTtiJvKPpLpDEiChiNyei5Y,88
23
- hh_applicant_tool-0.2.1.dist-info/entry_points.txt,sha256=Vb7M2YaYLMtKYJZh8chIrXZApMzSRFT1-rQw-U9r10g,65
24
- hh_applicant_tool-0.2.1.dist-info/RECORD,,
20
+ hh_applicant_tool/utils.py,sha256=FVmE5U7eKONx7G7NIOvu5RJUqLvAr2ThOTOtch-txBs,1347
21
+ hh_applicant_tool-0.2.2.dist-info/METADATA,sha256=sp9kZgGgyqgQGRIMBkDSWFDV3B7d7WZ7ORcetgnXLWQ,15605
22
+ hh_applicant_tool-0.2.2.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
23
+ hh_applicant_tool-0.2.2.dist-info/entry_points.txt,sha256=Vb7M2YaYLMtKYJZh8chIrXZApMzSRFT1-rQw-U9r10g,65
24
+ hh_applicant_tool-0.2.2.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: poetry-core 1.5.1
2
+ Generator: poetry-core 1.9.0
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any