Giter VIP home page Giter VIP logo

telepathy-community's Introduction

Telepathy: An OSINT toolkit for investigating Telegram chats. Developed by Jordan Wildon. Version 2.3.2.

Telepathy has been described as the "swiss army knife of Telegram tools," allowing OSINT analysts, researchers and digital investigators to archive Telegram chats (including replies, media content, comments and reactions), gather memberlists, lookup users by given location, analyze top posters in a chat, map forwarded messages, and more.

The toolkit has already seen a wide variety of use cases, including but not limited to: in investigative and data journalism, by academic and research institutions, and for intelligence gathering and analysis.

Are you looking for a enterprise-grade version of Telepathy?

Visit prose.ltd to find out how we can turbocharge your Telegram data collection with Telepathy Pro. No accounts, dealing with the command line, or hassle needed!

Installation

Pip install (recommended)

$ pip3 install telepathy

Install from source

$ git clone https://github.com/jordanwildon/Telepathy.git
$ cd Telepathy
$ pip install -r requirements.txt

Setup

On first use, Telepathy will ask for your Telegram API details (obtained from my.telegram.org). Once those are set up, it will prompt you to enter your phone number again and then send an authorization code to your Telegram account. If you have two-factor authentication enabled, you'll be asked to input your Telegram password.

OPTIONAL: Installing cryptg ($ pip3 install cryptg) may improve Telepathy's speed. The package hand decryption by Python over to C, making media downloads in particular quicker and more efficient.

Usage:

telepathy [OPTIONS]

Options:

  • '--target', '-t' [CHAT]

this option will identify the target of the scan. The specified chat must be public or have a private link. To get the chat name, look for the 't.me/chatname' link, and subtract the 't.me/'.

For example:

$ telepathy -t durov

The default is a basic scan which will find the title, description, number of participants, username, URL, chat type, chat ID, access hash, first post date and any applicable restrictions to the chat. For group chats, Telepathy will also generate a memberlist (up to 5,000 members).

  • '--comprehensive', '-c'

A comprehensive scan will offer the same information as the basic scan, but will also archive a chat's message history, gather the number of reactions, archive how many times a message has been forwarded, the number of replies to each message, and more.

Reaction lists are included in the archive file, including basic calculations of engagement rate. Only the most-common reactions are listed, with the total including all possible reactions. Currently, Telepathy calculates engagement rates based on forwards, comments and reactions seperately, with a calculation based on post views and one based on chat participant count. In future, Telepathy may include deeper analytics which can be cross-compared between chats based on a combination of these metrics, fixing for when comments, reactions or forwards are allowed or disallowed in a given chat.

For example:

$ telepathy -t durov -c
  • '--forwards', '-f'

This flag will create an edgelist based on messages forwarded into a chat. It can be used alongside either a default or comprehensive scan. Since 2.3.0, Telepathy now formats these edgelists to maximize compatability with Gephi.

For example:

$ telepathy -t durov -f

$ telepathy -t durov -c -f
  • '--media', '-m'

Use this flag to include media archiving alongside a comprehensive scan. This makes the process take significantly longer and should also be used with caution: you'll download all media content from the target chat, and it's up to you to not store illegal files on your system.

To archive media, you must run a comprehensive scan:

$ telepathy -t durov -c -m

Once files have downloaded, you can run exiftool on the associated media directory to gather deeper insights on the files, their metadata, and in some cases attribute who might be behind an anonymous channel. Further details are in the "bonus investigations tips" section of this README.

  • '--user', '-u'

Looks up a specified user. This will only work if your account has "encountered" the user before (for example, after archiving a group), you can specify User ID or @nickname. If looking up by username, it's not always necessary for your account to have already seen the user.

$ telepathy -t 0123456789 -u

$ telepathy -t @test_user -u
  • '--location', '-l']

Finds users near to specified coordinates. Input should be longitude followed by latitude, seperated by a comma. This feature only works if your Telegram account has a profile image which is set to be publicly viewable.

While searches for multiple locations at once may work in some cases, Telegram appears to have a limit on how quickly an account can cycle through locations. At the time of writing, this appears to be at least ten minutes. Further location scanning support while using multiple accounts is being explored for a future release.

$ telepathy -t 51.5032973,-0.1217424 -l
  • '--alt', '-a' [NUMBER]

Flag for running Telepathy from an alternative number or API details. You can use the same API key and Hash but authenticate with a different phone number. This allows for running multiple scans at the same time. Telepathy will default to the first details you offer, and up to four others can be added. Please see the notes at the top of this README for information regarding limitations with user IDs using this method.

$ telepathy -t Durov -c -a 1
  • '--export', '-e'

Exports all chats your account is part of to a CSV file. In a future release, this may assist with provisioning new accounts to automatically following the listed groups.

$ telepathy -e
  • '--reply', '-r'

Flag for enabling channel reply retrieval, this will archive replies and list users who replied to messages in the target channel.

$ telepathy -t [CHANNEL] -c -r 
  • '--translate', '-tr'

Flag for enabling auotmatic translation (currently only into English) during message retrieval.

$ telepathy -t [CHANNEL] -c -tr

Bonus investigations tips:

  • Navigating to a media archive directory and running Exiftool may give you a whole host of useful information for further investigation. Telegram doesn't currently scrub metadata from PDF, DOCX, XLSX, MP4, MOV and some other filetypes, which offer creation and edit time metadata, often timezones, sometimes authors, and general technical information about the perosn or people who created a media file.
$ cd ./telepathy/telepathy_files/CHATNAME/media
$ exiftool * > metadata.txt
  • Group and inferred channel memberlists offer a point of further investigation for usernames found. By using Maigret, you can look up where else a username has been used online. While this is not accurate in all cases, it's been proven to be helpful for identifying where a person has reused handles across platforms. In this case, remember to verify your findings to avoid false positives.

A note on how Telegram works

Telegram chats are organised into three key types: Channels, Megagroups/Supergroups and Gigagroups. Each option works slightly differently depending on the chat type. Channels can have seemingly unlimited subscribers and are where an admin will broadcast messages to an audience, Megagroups can have up to 200,000 members, each of whom can participate (if not restricted), and Gigagroups sit somewhere between the two.

Upcoming changes

In some environments (particularly Windows), Telepathy struggles to effectively manage files and can sometimes produce errors. Fixes for these errors will come in due course.

Upcoming features include:

  • Adding a time specification flag to set archiving for specific period.
  • A new method to once again gather complete memberlists (currently restricted by the API).
  • Ensuring inferred channel memberlists don't contain duplicate entries.
  • Exploration of whether channel events can be included, such as name changes.

feedback

Please send feedback to @jordanwildon on Twitter. You can follow Telepathy updates at @proseltd.

Usage terms

You may use Telepathy however you like, but your usecase is your responsibility. Be safe and respectful. If your usecase is for commercial purposes, please consider cour enterprise options at prose.ltd

Credits

All tools created by Jordan Wildon (@jordanwildon). Special thanks go to Giacomo Giallombardo for adding additional features and code refactoring, jkctech for collaboration on location lookup via the 'People Near Me' feature, and Alex Newhouse (@AlexBNewhouse) for his help with Telepathy v1. Shoutout also to Francesco Poldi for being a sounding board and offering help and advice when it comes to bug fixes.

Where possible, credit for the use of this tool in published research is desired, but not required. This can either come in the form of crediting Jordan Wildon, Prose Intelligence, or crediting Telepathy itself.

telepathy-community's People

Contributors

aaarghhh avatar matteofasulo avatar proseltd avatar rootbesi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

telepathy-community's Issues

Question: does Telepathy support viewing history?

Hi there, I've seen that telepathy supports getting for example the reaction lists for a file, but can it show the list of user ID who've opened the file? I'm guessing it's somewhere in the API since in a normal channel you can see who has seen your media.

Problem Connecting Telepathy to Telegram

Hello,

I have tried around a dozen times to install Telepathy and successfully connect it to my Telegram account. However, every time I try to run Telepathy (and am prompted to enter my phone number), I get the following error: telethon.errors.rpcerrorlist.ApiIdInvalidError: The api_id/api_hash combination is invalid (caused by SendCodeRequest). I am 100% positive that the credentials I entered are correct. I have tried to set my API ID and Hash as environment variables, but nothing seems to work. Has anyone else encountered this issue? How did you get around it?

I'm not sure if this is related (I am not a coder, full disclosure), but my telepathy never installs on a PATH. Guidance on these issues would be super appreciated, as I need Telepathy for a research project I am doing. Thank you so much in advance!

forward option not working

Are there any explanation as to why telepathy's -f (forward) option doesn't work, even though the specified channel contains forwarded messages? The message in the command prompt says "Forwards will be fetched". A folder is created but there are no files inside.

Feature request - target Group Chat ID

I tried unsuccessfully targeting group chat ID.
Currently script works for channels, but not for groups it seem.
Is it possible to add support to archive and analyse Group Chats?

Love the tool, more love available once it works for me :)

Followed readme instructions to the latter, Telepathy dir chmoded to 755,

python3 --version
Python 3.9.7
pip --version
pip 22.0.3 from /home/vredchenko/.local/lib/python3.9/site-packages/pip (python 3.9)
uname -a
Linux asus-tuf 5.15.23-76051523-generic #202202110435~1644952300~21.10~96763f1 SMP Tue Feb 15 19:52:40 U x86_64 x86_64 x86_64 GNU/Linux

I'd debug myself but right now lacking the time due to a tight deadline. Happy to provide more details / run more tests if it helps.

python3 telepathy.py 
Welcome to Telepathy
Please select a function:
1. Batch chat archiver
2. Archive within a timeframe
3. Scrape group members
4. Scrape forwarded messages in a chat
5. Lookup a user ID

Pick a number:1
Loading Batch chat archiver ...
Launching batch chat archiver
Welcome to the Telepathy archiving tool. This tool will archive Telegram chats based on a list.
Do you want to print messages to terminal while Telepathy runs? (y/n)y
Do you want to archive media content? (y/n)n
Archiving chats...
Traceback (most recent call last):
  File "/home/vredchenko/dev/donetcheng/Telepathy/telepathy.py", line 40, in <module>
    exec(open("archiver.py").read())
  File "<string>", line 150, in <module>
  File "/usr/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
    return future.result()
  File "<string>", line 60, in main
  File "/home/vredchenko/.local/lib/python3.9/site-packages/pandas/util/_decorators.py", line 311, in wrapper
    return func(*args, **kwargs)
  File "/home/vredchenko/.local/lib/python3.9/site-packages/pandas/io/parsers/readers.py", line 586, in read_csv
    return _read(filepath_or_buffer, kwds)
  File "/home/vredchenko/.local/lib/python3.9/site-packages/pandas/io/parsers/readers.py", line 482, in _read
    parser = TextFileReader(filepath_or_buffer, **kwds)
  File "/home/vredchenko/.local/lib/python3.9/site-packages/pandas/io/parsers/readers.py", line 811, in __init__
    self._engine = self._make_engine(self.engine)
  File "/home/vredchenko/.local/lib/python3.9/site-packages/pandas/io/parsers/readers.py", line 1040, in _make_engine
    return mapping[engine](self.f, **self.options)  # type: ignore[call-arg]
  File "/home/vredchenko/.local/lib/python3.9/site-packages/pandas/io/parsers/c_parser_wrapper.py", line 51, in __init__
    self._open_handles(src, kwds)
  File "/home/vredchenko/.local/lib/python3.9/site-packages/pandas/io/parsers/base_parser.py", line 222, in _open_handles
    self.handles = get_handle(
  File "/home/vredchenko/.local/lib/python3.9/site-packages/pandas/io/common.py", line 702, in get_handle
    handle = open(
FileNotFoundError: [Errno 2] No such file or directory: 'to_archive.csv'

Request to add for channel existence verification...

Hello, I tried telephaty and made a mistake of mistyping the name of a chat...
looks like when the chat doesn't exist the "total_participants" is returned as a string "no" which is handled as an error by 'int()'

I received the following error:

 [!] Performing comprehensive scan
 [-] Fetching details for [REDACTED]...
Traceback (most recent call last):
  File "/home/[REDACTED]/.local/bin/telepathy", line 8, in <module>
    sys.exit(cli())
  File "/home/[REDACTED]/.local/lib/python3.9/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/home/[REDACTED]/.local/lib/python3.9/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/home/[REDACTED]/.local/lib/python3.9/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/[REDACTED]/.local/lib/python3.9/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/home/[REDACTED]/.local/lib/python3.9/site-packages/telepathy/telepathy.py", line 1745, in cli
    client.loop.run_until_complete(main())
  File "/usr/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
    return future.result()
  File "/home/[REDACTED]/.local/lib/python3.9/site-packages/telepathy/telepathy.py", line 555, in main
    int(found_participants) / int(total_participants) * 100.
ValueError: invalid literal for int() with base 10: 'no'

crashes at start on windows

hi! cant start after api, hash and mobile number asking - see this:

C:\Users\Al>telepathy -t durov
←[32m
      ______     __                 __  __
     /_  __/__  / /__  ____  ____ _/ /_/ /_  __  __
      / / / _ \/ / _ \/ __ \/ __ `/ __/ __ \/ / / /
     / / /  __/ /  __/ /_/ / /_/ / /_/ / / / /_/ /
    /_/  \___/_/\___/ .___/\__,_/\__/_/ /_/\__, /
                   /_/                    /____/
    -- An OSINT toolkit for investigating Telegram chats.
    -- Developed by @jordanwildon | Version 2.0.0.

←[0m
Traceback (most recent call last):
  File "c:\python3\lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "c:\python3\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\python3\Scripts\telepathy.exe\__main__.py", line 7, in <module>
  File "c:\python3\lib\site-packages\click\core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "c:\python3\lib\site-packages\click\core.py", line 717, in main
    rv = self.invoke(ctx)
  File "c:\python3\lib\site-packages\click\core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "c:\python3\lib\site-packages\click\core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "c:\python3\lib\site-packages\telepathy\telepathy.py", line 177, in cli
    client.sign_in(phone_number)
  File "c:\python3\lib\site-packages\telethon\sync.py", line 39, in syncified
    return loop.run_until_complete(coro)
  File "c:\python3\lib\asyncio\base_events.py", line 467, in run_until_complete
    return future.result()
  File "c:\python3\lib\site-packages\telethon\client\auth.py", line 330, in sign
_in
    return await self.send_code_request(phone)
  File "c:\python3\lib\site-packages\telethon\client\auth.py", line 461, in send
_code_request
    functions.auth.ResendCodeRequest(phone, phone_hash))
  File "c:\python3\lib\site-packages\telethon\client\users.py", line 30, in __ca
ll__
    return await self._call(self._sender, request, ordered=ordered)
  File "c:\python3\lib\site-packages\telethon\client\users.py", line 87, in _cal
l
    result = await future
telethon.errors.rpcerrorlist.SendCodeUnavailableError: Returned when all availab
le options for this type of number were already used (e.g. flash-call, then SMS,
 then this error might be returned to trigger a second resend) (caused by Resend
CodeRequest)

Errors trying to run on OS X

Hey Jordan,

Have been still trying to get this running locally. I've tried 3 times starting from scratch and re-cloning and setting up the repo but I consistently get errors when trying to scrape forwarded messages and would love your help figuring out what I am doing wrong.

OS X 11.6.1 + Python 3.9.10

~/Desktop
➜  git clone https://github.com/jordanwildon/Telepathy.git
Cloning into 'Telepathy'...
remote: Enumerating objects: 151, done.
remote: Counting objects: 100% (151/151), done.
remote: Compressing objects: 100% (148/148), done.
remote: Total 151 (delta 86), reused 0 (delta 0), pack-reused 0
Receiving objects: 100% (151/151), 43.00 KiB | 3.58 MiB/s, done.
Resolving deltas: 100% (86/86), done.

~/Desktop
➜  cd Telepathy/

~/Desktop/Telepathy  main via 🐍 v3.9.10
➜  vim requirements.txt                                                                      [git:main] ✔

~/Desktop/Telepathy  main [!] via 🐍 v3.9.10 // 29s
➜  pip install -r requirements.txt                                                          [git:main] ✖
Requirement already satisfied: pandas==1.3.4 in /Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages (from -r requirements.txt (line 1)) (1.3.4)
Collecting Telethon==1.24.0
  Using cached Telethon-1.24.0-py3-none-any.whl (528 kB)
Requirement already satisfied: pytz>=2017.3 in /Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages (from pandas==1.3.4->-r requirements.txt (line 1)) (2021.3)
Requirement already satisfied: numpy>=1.17.3 in /Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages (from pandas==1.3.4->-r requirements.txt (line 1)) (1.22.2)
Requirement already satisfied: python-dateutil>=2.7.3 in /Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages (from pandas==1.3.4->-r requirements.txt (line 1)) (2.8.2)
Requirement already satisfied: rsa in /Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages (from Telethon==1.24.0->-r requirements.txt (line 2)) (4.8)
Requirement already satisfied: pyaes in /Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages (from Telethon==1.24.0->-r requirements.txt (line 2)) (1.6.1)
Requirement already satisfied: six>=1.5 in /Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages (from python-dateutil>=2.7.3->pandas==1.3.4->-r requirements.txt (line 1)) (1.16.0)
Requirement already satisfied: pyasn1>=0.1.3 in /Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages (from rsa->Telethon==1.24.0->-r requirements.txt (line 2)) (0.4.8)
Installing collected packages: Telethon
  Attempting uninstall: Telethon
    Found existing installation: Telethon 1.21.1
    Uninstalling Telethon-1.21.1:
      Successfully uninstalled Telethon-1.21.1
Successfully installed Telethon-1.24.0

~/Desktop/Telepathy  main [!] via 🐍 v3.9.10
➜  python3 setup.py                                                                         [git:main] ✖
Welcome to the Telepathy setup.
This file wil save your Telegram login information to allow API access.
Follow the README instructions to get your credentials.
Please enter your API ID:
******
You entered "******"
Is this correct? (y/n)y
Updating...
Please enter your API Hash:
******
You entered "******"
Is this correct? (y/n)y
Updating...
Please enter your phone number:
+******
You entered "+******"
Is this correct? (y/n)y
Updating...
Setup is complete.
Telepathy is now ready and can be used. You may now close the terminal.

~/Desktop/Telepathy  main [!?] via 🐍 v3.9.10 // 55s
➜  python3 telepathy.py                                                                     [git:main] ✖
Welcome to Telepathy
Please select a function:
1. Batch chat archiver
2. Archive within a timeframe
3. Scrape group members
4. Scrape forwarded messages in a chat
5. Lookup a user ID

Pick a number:4
Loading Scrape forwarded messages in a chat ...
Launching channel forward scraper...
Enter the code: ******
Welcome to channel forward scraper.
This tool will scrape a Telegram channel for all forwarded messages and their original sources.
Do you want to print forwards to terminal while Telepathy runs? (y/n)y
Please enter a Telegram channel name:
convoytodc22
You entered "convoytodc22"
Is this correct? (y/n)y
Scraping forwards from convoytodc22 This may take a while...
Traceback (most recent call last):
  File "<string>", line 53, in main
NameError: name 'get_display_name' is not defined

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/ejfox/Desktop/Telepathy/telepathy.py", line 49, in <module>
    exec(open("forwards.py").read())
  File "<string>", line 97, in <module>
  File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
    return future.result()
  File "<string>", line 91, in main
NameError: name 'user_selection_media' is not defined

I tried to use a more recent version of Telethon by updating requirements.txt so that
Telethon==1.24.0 but I still get the same error. Any help deeply appreciated!

Session SqlLite bug

Hi! I have problems running telepathy. After the session object is created (I have entered credentials) I get an error on each of the next runs, error is:
Traceback (most recent call last): File "C:\Users\user\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 196, in _run_module_as_main return _run_code(code, main_globals, None, File "C:\Users\user\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 86, in _run_code exec(code, run_globals) File "C:\Users\user\PycharmProjects\pythonProject\venv\Scripts\telepathy.exe\__main__.py", line 7, in <module> File "c:\users\user\pycharmprojects\pythonproject\venv\lib\site-packages\click\core.py", line 829, in __call__ return self.main(*args, **kwargs) File "c:\users\user\pycharmprojects\pythonproject\venv\lib\site-packages\click\core.py", line 782, in main rv = self.invoke(ctx) File "c:\users\user\pycharmprojects\pythonproject\venv\lib\site-packages\click\core.py", line 1066, in invoke return ctx.invoke(self.callback, **ctx.params) File "c:\users\user\pycharmprojects\pythonproject\venv\lib\site-packages\click\core.py", line 610, in invoke return callback(*args, **kwargs) File "c:\users\user\pycharmprojects\pythonproject\venv\lib\site-packages\telepathy\telepathy.py", line 226, in cli client = TelegramClient(phone_number, api_id, api_hash) File "c:\users\user\pycharmprojects\pythonproject\venv\lib\site-packages\telethon\client\telegrambaseclient.py", line 275, in __init__ session = SQLiteSession(session) File "c:\users\user\pycharmprojects\pythonproject\venv\lib\site-packages\telethon\sessions\sqlite.py", line 47, in __init__ c = self._cursor() File "c:\users\user\pycharmprojects\pythonproject\venv\lib\site-packages\telethon\sessions\sqlite.py", line 242, in _cursor self._conn = sqlite3.connect(self.filename, sqlite3.OperationalError: unable to open database file .
Would be grateful for any advice.

Problem installing Telepathy

Hello
I am using KALI linux virtual machine
I installed Telepathy according to the tutorial
I moved to the Telepathy folder
And when I try to run the command
telepathy -t durov
I am encountering an error
telepathy: command not found

I'd love to know why he doesn't recognize Telepathy
And how to solve the problem
And another question I wanted to ask where do I enter the Telegram API details in Telepathy
Thank you

Trouble fetching data from private group

Hello there! I was trying to fetch information from one of my own groups, but if i share the ID of the chat (without the https://t.me/ of course) it just returns an error. (I replaced the id with CHAT_ID, for obvious reasons

[!] Performing basic scan
 [-] Fetching details for CHAT_ID...
Traceback (most recent call last):
  File "/usr/bin/telepathy", line 8, in <module>
    sys.exit(cli())
  File "/home/comradewave/.local/lib/python3.10/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/home/comradewave/.local/lib/python3.10/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/home/comradewave/.local/lib/python3.10/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/comradewave/.local/lib/python3.10/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/home/comradewave/.local/lib/python3.10/site-packages/telepathy/telepathy.py", line 1740, in cli
    client.loop.run_until_complete(main())
  File "/usr/lib/python3.10/asyncio/base_events.py", line 649, in run_until_complete
    return future.result()
  File "/home/comradewave/.local/lib/python3.10/site-packages/telepathy/telepathy.py", line 444, in main
    entity = await client.get_entity(t)
  File "/home/comradewave/.local/lib/python3.10/site-packages/telethon/client/users.py", line 335, in get_entity
    result.append(await self._get_entity_from_string(x))
  File "/home/comradewave/.local/lib/python3.10/site-packages/telethon/client/users.py", line 574, in _get_entity_from_string
    raise ValueError(
ValueError: Cannot find any entity corresponding to "+CHAT_ID"

charmap' codec can't encode character

Hi, when I try to run telepathy.py -t the scrip start and run, he create a csv that contain the header and information about my user (and sometime 2 or 3 more users) but crash right after

Windows 2016 latest patch with Python 3.10.5 with all package up to date
Any idea ?

Traceback (most recent call last):
File "D:\xxxxxx\telepathy.py", line 933, in
cli()
File "D:\Users\noname\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 1130, in call
return self.main(*args, **kwargs)
File "D:\Users\noname\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 1055, in main
rv = self.invoke(ctx)
File "D:\Users\noname\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 1404, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "D:\Users\noname\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 760, in invoke
return __callback(*args, **kwargs)
File "D:\xxxxxxxx\telepathy.py", line 930, in cli
client.loop.run_until_complete(main())
File "D:\Users\noname\AppData\Local\Programs\Python\Python310\lib\asyncio\base_events.py", line 646, in run_until_complete
return future.result()
File "D:\xxxxxxxx\telepathy.py", line 347, in main
members_df.to_csv(save_members, sep=';')
File "D:\Users\noname\AppData\Local\Programs\Python\Python310\lib\site-packages\pandas\core\generic.py", line 3551, in to_csv
return DataFrameRenderer(formatter).to_csv(
File "D:\Users\noname\AppData\Local\Programs\Python\Python310\lib\site-packages\pandas\io\formats\format.py", line 1180, in to_csv
csv_formatter.save()
File "D:\Users\noname\AppData\Local\Programs\Python\Python310\lib\site-packages\pandas\io\formats\csvs.py", line 261, in save
self._save()
File "D:\Users\noname\AppData\Local\Programs\Python\Python310\lib\site-packages\pandas\io\formats\csvs.py", line 266, in _save
self._save_body()
File "D:\Users\noname\AppData\Local\Programs\Python\Python310\lib\site-packages\pandas\io\formats\csvs.py", line 304, in _save_body
self._save_chunk(start_i, end_i)
File "D:\Users\noname\AppData\Local\Programs\Python\Python310\lib\site-packages\pandas\io\formats\csvs.py", line 315, in _save_chunk
libwriters.write_csv_rows(
File "pandas_libs\writers.pyx", line 55, in pandas._libs.writers.write_csv_rows
File "D:\Users\noname\AppData\Local\Programs\Python\Python310\lib\encodings\cp1252.py", line 19, in encode
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode character '\U0001fa84' in position 22: character maps to

Upgrading version of telethon?

Hi, so it looks like there’s a bug in telethon 1.25 which means that for some channels get_messages / iter_messages only returns a 100 items. This is inconsistent, i.e. for some channels you get everything, and for some channels, you only get ~100 messages. (This bug is constantly reproducible for specific channels)

It appears to be fixed in telethon v1.27 though. Happy to raise a PR with the new version, but just wondering if there are any compatibility issues that you’re already aware of that’s a blocker to the update.

Thanks for creating the library — allows me to retire my fragile scripts!

Installation guide needed (I have personal errors)

Hello. It would be great if there would be a detailed installation guide regarding both ways of installation - via pip or from source from step to step to everyone maybe?

Anyway, I have this issue after installing via pip3:
Traceback (most recent call last):
  File "/usr/local/bin/telepathy", line 11, in <module>
    load_entry_point('telepathy==2.3.2', 'console_scripts', 'telepathy')()
  File "/home/andrejki/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 486, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/home/andrejki/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 2867, in load_entry_point
    return ep.load()
  File "/home/andrejki/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 2471, in load
    return self.resolve()
  File "/home/andrejki/.local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 2477, in resolve
    module = __import__(self.module_name, fromlist=['__name__'], level=0)
ModuleNotFoundError: No module named 'telepathy'

The solution described somewhere to install python panda library, but that was already solved.

I tried to install it from the source and holly cow, I just can t figure it out. I did python3 setup.py build and later python3 setup.py install and basically nothing changed, I haven t figured it out to work. How to fix my issues and how to do the installation properly from step 1 to last step? I am not that a newbie, but for this tool installation I am a newbie.

Best regards

Great tool, but I'm having some issues

Hi Jordan!

I have been experimenting with your tool - great concept and I can certainly see a lot of great uses for this.

I am planning to write an article about it on my webpage if that is something you would be okay with? You can see the content I write here: https://os2int.com/toolbox

I have encountered some issues when using the tool. When I deployed forwards.py, no net.csv file is created. The edgelist populates quite nicely. Would you be able to clarify whether this is a bug on my side or whether I have missed something out?

<frozen runpy>", line 198, in _run_module_as_main

Hi guys,

I have installed Telepathy, and it worked the first time. But now every time I wanna use it, Ill get this error:

Traceback (most recent call last):
File "", line 198, in _run_module_as_main
File "", line 88, in run_code
File "C:\Users\alien\AppData\Local\Programs\Python\Python311\Scripts\telepathy.exe_main
.py", line 7, in
File "C:\Users\alien\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 829, in call
return self.main(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\alien\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 782, in main
rv = self.invoke(ctx)
^^^^^^^^^^^^^^^^
File "C:\Users\alien\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 1066, in invoke
return ctx.invoke(self.callback, **ctx.params)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\alien\AppData\Local\Programs\Python\Python311\Lib\site-packages\click\core.py", line 610, in invoke
return callback(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\alien\AppData\Local\Programs\Python\Python311\Lib\site-packages\telepathy\telepathy.py", line 226, in cli
client = TelegramClient(phone_number, api_id, api_hash)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\alien\AppData\Local\Programs\Python\Python311\Lib\site-packages\telethon\client\telegrambaseclient.py", line 275, in init
session = SQLiteSession(session)
^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\alien\AppData\Local\Programs\Python\Python311\Lib\site-packages\telethon\sessions\sqlite.py", line 47, in init
c = self._cursor()
^^^^^^^^^^^^^^
File "C:\Users\alien\AppData\Local\Programs\Python\Python311\Lib\site-packages\telethon\sessions\sqlite.py", line 242, in _cursor
self._conn = sqlite3.connect(self.filename,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
sqlite3.OperationalError: unable to open database file

Does anyone know why? I am a journalist and have very limited knowledge of Python. I'd be grateful if someone could help me.

UnicodeEncodeError: 'charmap' codec can't encode character '\u2794' in position 108: character maps to <undefined>

Script run for 8 hours until it crash at then end and the files was empty

D:\telepathy\dump\Telepathy\telepathy>telepathy -t MacacosCC -c

  ______     __                 __  __
 /_  __/__  / /__  ____  ____ _/ /_/ /_  __  __
  / / / _ \/ / _ \/ __ \/ __ `/ __/ __ \/ / / /
 / / /  __/ /  __/ /_/ / /_/ / /_/ / / / /_/ /
/_/  \___/_/\___/ .___/\__,_/\__/_/ /_/\__, /
               /_/                    /____/
-- An OSINT toolkit for investigating Telegram chats.
-- Developed by @jordanwildon | Version 2.0.0.

[!] Performing comprehensive scan

[-] Fetching details for MacacosCC...
┬ Chat details
├ Title: MacacoCC [OFC]
├ Description: FREE DBQuality before quantity 😎❤️Owner @VaL4K
├ Total participants: 7502
├ Username: MacacosCC
├ URL: http://t.me/MacacosCC
├ Chat type: Channel
├ Chat id: 1421996100
├ Access hash: xxxxxxxxxxxxxxxxxxx
├ Scam: False
├ First post date: 2021/05/31, 12:32 UTC
└ Restrictions: None

[!] Calculating number of messages...
[-] Fetching message archive...
on 25900: Security error while unpacking a received message: Server replied with a wrong session ID
on 25900: Security error while unpacking a received message: Server replied with a wrong session ID
on 25900: Security error while unpacking a received message: Server replied with a wrong session ID
on 25900: Security error while unpacking a received message: Server replied with a wrong session ID
on 25900: Security error while unpacking a received message: Server replied with a wrong session ID
on 25900: Security error while unpacking a received message: Server replied with a wrong session ID
....... thousand of line later .......
[-] Progress: |████████████████████✗︎ (!) 169275/169262 [100%] in 8:57:36.3 (5.25/s)
Traceback (most recent call last):
File "D:\Users\xxxxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
File "D:\Users\xxxxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 86, in run_code
exec(code, run_globals)
File "D:\Users\xxxxxxxxxxx\AppData\Local\Programs\Python\Python310\Scripts\telepathy.exe_main
.py", line 7, in
File "D:\Users\xxxxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 829, in call
return self.main(*args, **kwargs)
File "D:\Users\xxxxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 782, in main
rv = self.invoke(ctx)
File "D:\Users\xxxxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 1066, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "D:\Users\xxxxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 610, in invoke
return callback(*args, **kwargs)
File "D:\Users\xxxxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\telepathy\telepathy.py", line 930, in cli
client.loop.run_until_complete(main())
File "D:\Users\xxxxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\asyncio\base_events.py", line 646, in run_until_complete
return future.result()
File "D:\Users\xxxxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\telepathy\telepathy.py", line 761, in main
c_archive.to_csv(archive_file, sep=';')
File "D:\Users\xxxxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\pandas\core\generic.py", line 3551, in to_csv
return DataFrameRenderer(formatter).to_csv(
File "D:\Users\xxxxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\pandas\io\formats\format.py", line 1180, in to_csv
csv_formatter.save()
File "D:\Users\xxxxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\pandas\io\formats\csvs.py", line 261, in save
self._save()
File "D:\Users\xxxxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\pandas\io\formats\csvs.py", line 266, in _save
self._save_body()
File "D:\Users\xxxxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\pandas\io\formats\csvs.py", line 304, in _save_body
self._save_chunk(start_i, end_i)
File "D:\Users\xxxxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\pandas\io\formats\csvs.py", line 315, in _save_chunk
libwriters.write_csv_rows(
File "pandas_libs\writers.pyx", line 55, in pandas._libs.writers.write_csv_rows
File "D:\Users\xxxxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\encodings\cp1252.py", line 19, in encode
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode character '\u2794' in position 108: character maps to

Unable to login. Not asking for "Login code", error returned instead

Hello, I am using Telepathy in it's last version and Telethon is reported to be the last one too. Last version of python and so on.

The problem I am facing is that after asking me API and phone information, telepathy stops.

Everything seems normal, and later, when I try to make a query, it sends a message to my phone Telegram but instead of prompt for entering this code it shows an unrecoverable error:

root@8826c29fe656:/dataset# telepathy -t durov

      ______     __                 __  __
     /_  __/__  / /__  ____  ____ _/ /_/ /_  __  __
      / / / _ \/ / _ \/ __ \/ __ `/ __/ __ \/ / / /
     / / /  __/ /  __/ /_/ / /_/ / /_/ / / / /_/ /
    /_/  \___/_/\___/ .___/\__,_/\__/_/ /_/\__, /
                   /_/                    /____/
    -- An OSINT toolkit for investigating Telegram chats.
    -- Developed by @jordanwildon | Version 2.0.0.
    

Traceback (most recent call last):
  File "/usr/local/bin/telepathy", line 8, in <module>
    sys.exit(cli())
  File "/usr/local/lib/python3.7/dist-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python3.7/dist-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python3.7/dist-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python3.7/dist-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/usr/local/lib/python3.7/dist-packages/telepathy/telepathy.py", line 177, in cli
    client.sign_in(phone_number)
  File "/usr/local/lib/python3.7/dist-packages/telethon/sync.py", line 39, in syncified
    return loop.run_until_complete(coro)
  File "/usr/lib/python3.7/asyncio/base_events.py", line 584, in run_until_complete
    return future.result()
  File "/usr/local/lib/python3.7/dist-packages/telethon/client/auth.py", line 329, in sign_in
    return await self.send_code_request(phone)
  File "/usr/local/lib/python3.7/dist-packages/telethon/client/auth.py", line 460, in send_code_request
    functions.auth.ResendCodeRequest(phone, phone_hash))
  File "/usr/local/lib/python3.7/dist-packages/telethon/client/users.py", line 30, in __call__
    return await self._call(self._sender, request, ordered=ordered)
  File "/usr/local/lib/python3.7/dist-packages/telethon/client/users.py", line 83, in _call
    result = await future
telethon.errors.rpcerrorlist.SendCodeUnavailableError: Returned when all available options for this type of number were already used (e.g. flash-call, then SMS, then this error might be returned to trigger a second resend) (caused by ResendCodeRequest)`

It doesn't make sense to me, and after watching the python code I don't know how to solve this.

Entire account is missing

Great idea but I ran your app 2x and it ran successfully, except it did not grab user list and my entire account is gone.
All saved messages, all my chats gone.

I was hunting pedophiles and there was private chats that are now just gone.
Absolutely no way for me to restore months of data.

I do not even know what to say at this point........

I'm having some issues

File "/data/data/com.termux/files/home/Telepathy/telepathy.py", line 46, in
exec(open("members.py").read())
File "", line 64, in
File "/data/data/com.termux/files/usr/lib/python3.10/site-packages/telethon/sync.py", line 39, in syncified
return loop.run_until_complete(coro)
File "/data/data/com.termux/files/usr/lib/python3.10/asyncio/base_events.py", line 641, in run_until_complete
return future.result()
File "/data/data/com.termux/files/usr/lib/python3.10/site-packages/telethon/client/chats.py", line 474, in get_participants
return await self.iter_participants(*args, **kwargs).collect()
File "/data/data/com.termux/files/usr/lib/python3.10/site-packages/telethon/requestiter.py", line 113, in collect
async for message in self:
File "/data/data/com.termux/files/usr/lib/python3.10/site-packages/telethon/requestiter.py", line 74, in anext
if await self._load_next_chunk():
File "/data/data/com.termux/files/usr/lib/python3.10/site-packages/telethon/client/chats.py", line 200, in _load_next_chunk
results = await self.client(self.requests)
File "/data/data/com.termux/files/usr/lib/python3.10/site-packages/telethon/client/users.py", line 30, in call
return await self._call(self._sender, request, ordered=ordered)
File "/data/data/com.termux/files/usr/lib/python3.10/site-packages/telethon/client/users.py", line 75, in _call
raise MultiError(exceptions, results, requests)
telethon.errors.common.MultiError: ([FloodWaitError('A wait of 30 seconds is required (caused by GetParticipantsRequest)'), None, FloodWaitError('A wait of 30 seconds is required (caused by GetParticipantsRequest)'), FloodWaitError('A wait of 30 seconds is required (caused by GetParticipantsRequest)'), FloodWaitError('A wait of 30 seconds is required (caused by GetParticipantsRequest)'), None, None, FloodWaitError('A wait of 30 seconds is required (caused by GetParticipantsRequest)'), FloodWaitError('A wait of 30 seconds is required (caused by GetParticipantsRequest)'), FloodWaitError('A wait of 30 seconds is required (caused by GetParticipantsRequest)'), None, FloodWaitError('A wait of 30 seconds is required (caused by GetParticipantsRequest)'), FloodWaitError('A wait of 30 seconds is required (caused by GetParticipantsRequest)'), FloodWaitError('A wait of 30 seconds is required (caused by GetParticipantsRequest)'), FloodWaitError('A wait of 30 seconds is required (caused by GetParticipantsRequest)'), FloodWaitError('A wait of 30 seconds is required (caused by GetParticipantsRequest)'), FloodWaitError('A wait of 30 seconds is required (caused by GetParticipantsRequest)'), FloodWaitError('A wait of 30 seconds is required (caused by GetParticipantsRequest)'), FloodWaitError('A wait of 30 seconds is required (caused by GetParticipantsRequest)'), FloodWaitError('A wait of 30 seconds is required (caused by GetParticipantsRequest)'), FloodWaitError('A wait of 30 seconds is required (caused by GetParticipantsRequest)'), FloodWaitError('A wait of 30 seconds is required (caused by GetParticipantsRequest)'), FloodWaitError('A wait of 30 seconds is required (caused by GetParticipantsRequest)'), FloodWaitError('A wait of 30 seconds is required (caused by GetParticipantsRequest)'), FloodWaitError('A wait of 30 seconds is required (caused by GetParticipantsRequest)'), FloodWaitError('A wait of 30 seconds is required (caused by GetParticipantsRequest)')], [None, <telethon.tl.types.channels.ChannelParticipants object at 0x732d18a7a0>, None, None, None, <telethon.tl.types.channels.ChannelParticipants object at 0x732d188a00>, <telethon.tl.types.channels.ChannelParticipants object at 0x732d18a9b0>, None, None, None, <telethon.tl.types.channels.ChannelParticipants object at 0x732d18a6b0>, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None], [<telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d10b190>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d10b790>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d10bd90>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d10be50>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d10bf10>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d10bfd0>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d1140d0>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d114190>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d114250>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d114310>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d1143d0>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d114490>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d114550>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d114610>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d1146d0>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d114790>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d114850>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d114910>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d1149d0>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d114a90>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d114b50>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d114c10>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d114cd0>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d114d90>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d114e50>, <telethon.tl.functions.channels.GetParticipantsRequest object at 0x732d114f10>])
Segmentation fault

Is there an issue on my side that I need to fix? I did a clean install and setup, can't figure out if there is something else.

Trouble running it in a Colab notebook

I tried to build a simple Colab notebook for using the tool (this, it's in German, unfortunately), to make the tool usable for people who are not allowed to install Python on their computers.

This works fine as long as there is no saved login data, if the 1234567.session and telepathy_files/login.txt files exist, the programm crashes:

Traceback (most recent call last):
  File "/usr/local/bin/telepathy", line 8, in <module>
    sys.exit(cli())
  File "/usr/local/lib/python3.8/dist-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/usr/local/lib/python3.8/dist-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/usr/local/lib/python3.8/dist-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/usr/local/lib/python3.8/dist-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/usr/local/lib/python3.8/dist-packages/telepathy/telepathy.py", line 226, in cli
    client = TelegramClient(phone_number, api_id, api_hash)
  File "/usr/local/lib/python3.8/dist-packages/telethon/client/telegrambaseclient.py", line 275, in __init__
    session = SQLiteSession(session)
  File "/usr/local/lib/python3.8/dist-packages/telethon/sessions/sqlite.py", line 47, in __init__
    c = self._cursor()
  File "/usr/local/lib/python3.8/dist-packages/telethon/sessions/sqlite.py", line 242, in _cursor
    self._conn = sqlite3.connect(self.filename,
sqlite3.OperationalError: unable to open database file

I guess there might be a very simple solution to this (apart from deleting the files, and starting from scratch). Have you got an idea?

task was destroyed but it is pending

Hi,
i use this code to run Telepathy

for channel in channels:
    start = datetime.now()
    os.system('telepathy -t' + channel+' -c')   
    file = open('notes.txt', 'a')
    stop = datetime.now()
    final_time = format(stop - start)
    file.write(final_time+';'+channel+'\n')
    file.close()

but usually don't get all results from all channels as i get:

error

any idea how to fix it?

Help required

Hi,

Can you help me please.

So I provide the following:
APP api id
APP api Hash
Mobile number
and then the mobile token.

I then provided the following test command: telepathy -t durov

I then received the following: The API access for bot users is restricted. The method you tried cannot be executed as a bot (caused by GetHistoryRequest)

any advice would be grateful

Unable to download v2.3.2

Really awesome tool, Jordan! I'm really excited to get to know/use it. I'm having an issue when running the setup where it only downloads/installs the v2.0.0 version.

I think this is preventing the overall tool from running properly with the usage commands I input.

Any suggestions?

I'm extremely new to coding and OSINT - if this is a basic user error on my part, I apologize!

Slow parsing

How to solve the parsing speed problem?
very slow scanning in mode -c

problem

UnicodeEncodeError: 'charmap' codec can't encode characters in position 48-50: character maps to <undefined>

Another encode error, latest telepathy and python version
D:\telepathy\dump\Telepathy\telepathy>telepathy -t durov -c

  ______     __                 __  __
 /_  __/__  / /__  ____  ____ _/ /_/ /_  __  __
  / / / _ \/ / _ \/ __ \/ __ `/ __/ __ \/ / / /
 / / /  __/ /  __/ /_/ / /_/ / /_/ / / / /_/ /
/_/  \___/_/\___/ .___/\__,_/\__/_/ /_/\__, /
               /_/                    /____/
-- An OSINT toolkit for investigating Telegram chats.
-- Developed by @jordanwildon | Version 2.0.0.

[!] Performing comprehensive scan

[-] Fetching details for durov...
┬ Chat details
├ Title: Durov's Channel
├ Description: Thoughts from the Product Manager / CEO /
Founder of Telegram.
├ Total participants: 651807
├ Username: durov
├ URL: http://t.me/durov
├ Chat type: Channel
├ Chat id: 1006503122
├ Access hash: xxxxxxxxxxxxxxx
├ Scam: False
├ First post date: 2015/10/28, 18:20 UTC
└ Restrictions: None

[!] Calculating number of messages...
[-] Fetching message archive...
[-] Progress: |████████████████████| 155/155 [100%] in 1:29.5 (1.73/s)
Traceback (most recent call last):
File "D:\Users\xxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
File "D:\Users\xxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 86, in run_code
exec(code, run_globals)
File "D:\Users\xxxxxxxxx\AppData\Local\Programs\Python\Python310\Scripts\telepathy.exe_main
.py", line 7, in
File "D:\Users\xxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 829, in call
return self.main(*args, **kwargs)
File "D:\Users\xxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 782, in main
rv = self.invoke(ctx)
File "D:\Users\xxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 1066, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "D:\Users\xxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\click\core.py", line 610, in invoke
return callback(*args, **kwargs)
File "D:\Users\xxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\telepathy\telepathy.py", line 930, in cli
client.loop.run_until_complete(main())
File "D:\Users\xxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\asyncio\base_events.py", line 646, in run_until_complete
return future.result()
File "D:\Users\xxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\telepathy\telepathy.py", line 761, in main
c_archive.to_csv(archive_file, sep=';')
File "D:\Users\xxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\pandas\core\generic.py", line 3551, in to_csv
return DataFrameRenderer(formatter).to_csv(
File "D:\Users\xxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\pandas\io\formats\format.py", line 1180, in to_csv
csv_formatter.save()
File "D:\Users\xxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\pandas\io\formats\csvs.py", line 261, in save
self._save()
File "D:\Users\xxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\pandas\io\formats\csvs.py", line 266, in _save
self._save_body()
File "D:\Users\xxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\pandas\io\formats\csvs.py", line 304, in _save_body
self._save_chunk(start_i, end_i)
File "D:\Users\xxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\site-packages\pandas\io\formats\csvs.py", line 315, in _save_chunk
libwriters.write_csv_rows(
File "pandas_libs\writers.pyx", line 55, in pandas._libs.writers.write_csv_rows
File "D:\Users\xxxxxxxxx\AppData\Local\Programs\Python\Python310\lib\encodings\cp1252.py", line 19, in encode
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode characters in position 48-50: character maps to

UnboundLocalError: local variable 'c_replies' referenced before assignment

while fetching data from a channel at 99% I got the following message error:

on 995: An exception occurred. 'NoneType' object has no attribute 'user_id'
 [-] Progress:  |███████████████████▉⚠︎ (!) 999/1005 [99%] in 23:59.2 (0.69/s) 
Traceback (most recent call last):
  File "/home/[REDCTED]/.local/bin/telepathy", line 8, in <module>
    sys.exit(cli())
  File "/home/[REDCTED]/.local/lib/python3.9/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/home/[REDCTED]/.local/lib/python3.9/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/home/[REDCTED]/.local/lib/python3.9/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/[REDCTED]/.local/lib/python3.9/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/home/[REDCTED]/.local/lib/python3.9/site-packages/telepathy/telepathy.py", line 1745, in cli
    client.loop.run_until_complete(main())
  File "/usr/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
    return future.result()
  File "/home/[REDCTED]/.local/lib/python3.9/site-packages/telepathy/telepathy.py", line 1360, in main
    c_replies.to_csv(rep_file, sep=";")
UnboundLocalError: local variable 'c_replies' referenced before assignment

No module names 'libs.utils'

Hi, I am having problem running the tool. I always the error of the image.

ModuleNotFoundError: No module named 'libs.utils'

Can anyone help me out?
thank you

Need some help

So when I go to run a basic Telepathy query I get the following:

The API access for bot users is restricted. The method you tried to invoke cannot be executed as a bot (caused by GetHistoryRequest)

Error using archive.py

I ran archive.py and got the following error:

Traceback (most recent call last):
File "/home/kali/Telepathy/archiver.py", line 31, in
client.sign_in(phone, input('Enter the code: '))
File "/usr/local/lib/python3.9/dist-packages/telethon/sync.py", line 39, in syncified
return loop.run_until_complete(coro)
File "/usr/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
return future.result()
File "/usr/local/lib/python3.9/dist-packages/telethon/client/auth.py", line 368, in sign_in
result = await self(request)
File "/usr/local/lib/python3.9/dist-packages/telethon/client/users.py", line 30, in call
return await self._call(self._sender, request, ordered=ordered)
File "/usr/local/lib/python3.9/dist-packages/telethon/client/users.py", line 79, in _call
result = await future
telethon.errors.rpcerrorlist.SessionPasswordNeededError: Two-steps verification is enabled and a password is required (caused by SignInRequest)

What am I doing wrong?

AttributeError: 'User' object has no attribute 'title'

telepathy -t ***** -c

      ______     __                 __  __
     /_  __/__  / /__  ____  ____ _/ /_/ /_  __  __
      / / / _ \/ / _ \/ __ \/ __ `/ __/ __ \/ / / /
     / / /  __/ /  __/ /_/ / /_/ / /_/ / / / /_/ /
    /_/  \___/_/\___/ .___/\__,_/\__/_/ /_/\__, /
                   /_/                    /____/
    -- An OSINT toolkit for investigating Telegram chats.
    -- Developed by @jordanwildon | Version 2.2.62.

[!] Performing comprehensive scan
[-] Fetching details for *****...
Traceback (most recent call last):
File "C:\Python310\lib\runpy.py", line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
File "C:\Python310\lib\runpy.py", line 86, in run_code
exec(code, run_globals)
File "C:\Python310\Scripts\telepathy.exe_main
.py", line 7, in
File "C:\Python310\lib\site-packages\click\core.py", line 829, in call
return self.main(*args, **kwargs)
File "C:\Python310\lib\site-packages\click\core.py", line 782, in main
rv = self.invoke(ctx)
File "C:\Python310\lib\site-packages\click\core.py", line 1066, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "C:\Python310\lib\site-packages\click\core.py", line 610, in invoke
return callback(*args, **kwargs)
File "C:\Python310\lib\site-packages\telepathy\telepathy.py", line 1759, in cli
client.loop.run_until_complete(main())
File "C:\Python310\lib\asyncio\base_events.py", line 646, in run_until_complete
return future.result()
File "C:\Python310\lib\site-packages\telepathy\telepathy.py", line 407, in main
name = entity.title
AttributeError: 'User' object has no attribute 'title'

Scrape of Forwards of Forwards failed

Hello,

I want to report another issue.

First, I scraped all forwards from a channel. That worked flawlessly. There were some expectations, but that was displayed transparently. Then, I tried to scrape all forwards from that forwards. For a while, it worked. At some point, this occured:

Traceback (most recent call last): File "telepathy.py", line 39, in <module> exec(open("archiver.py").read()) File "<string>", line 164, in <module> File "<string>", line 48, in <module> File "<string>", line 166, in <module> File "/usr/lib/python3.8/asyncio/base_events.py", line 616, in run_until_complete return future.result() File "<string>", line 114, in new_main File "/home/osint/.local/lib/python3.8/site-packages/telethon/requestiter.py", line 58, in __anext__ if await self._init(**self.kwargs): File "/home/osint/.local/lib/python3.8/site-packages/telethon/client/messages.py", line 26, in _init self.entity = await self.client.get_input_entity(entity) File "/home/osint/.local/lib/python3.8/site-packages/telethon/client/users.py", line 432, in get_input_entity await self._get_entity_from_string(peer)) File "/home/osint/.local/lib/python3.8/site-packages/telethon/client/users.py", line 569, in _get_entity_from_string raise ValueError( ValueError: Cannot find any entity corresponding to "Alternative History 2039"

After that, the scrape stopped. In the generated net.csv are all channels wich were scraped to this point.

Is there a solution?

Thanks in advance,

Best wishes!

Missing option

from latest documentation, we should be able to use -u for user, this option doesn't seem to be there

D:\telepathy\dump\Telepathy\telepathy>telepathy -u durov
Usage: telepathy [OPTIONS]
Try 'telepathy --help' for help.

Error: no such option: -u

D:\telepathy\dump\Telepathy\telepathy>telepathy --help
Usage: telepathy [OPTIONS]

Options:
-t, --target TEXT Specifies a chat to investigate.
-c, --comprehensive Comprehensive scan, includes archiving.
-m, --media Archives media in the specified chat.
-f, --forwards Scrapes forwarded messages.
--help Show this message and exit.

AttributeError: 'User' object has no attribute 'title'

telepathy -t ***** -c

  ______     __                 __  __
 /_  __/__  / /__  ____  ____ _/ /_/ /_  __  __
  / / / _ \/ / _ \/ __ \/ __ `/ __/ __ \/ / / /
 / / /  __/ /  __/ /_/ / /_/ / /_/ / / / /_/ /
/_/  \___/_/\___/ .___/\__,_/\__/_/ /_/\__, /
               /_/                    /____/
-- An OSINT toolkit for investigating Telegram chats.
-- Developed by @jordanwildon | Version 2.2.62.

[!] Performing comprehensive scan
[-] Fetching details for *****...
Traceback (most recent call last):
File "C:\Python310\lib\runpy.py", line 196, in _run_module_as_main
return _run_code(code, main_globals, None,
File "C:\Python310\lib\runpy.py", line 86, in run_code
exec(code, run_globals)
File "C:\Python310\Scripts\telepathy.exe_main.py", line 7, in
File "C:\Python310\lib\site-packages\click\core.py", line 829, in call
return self.main(*args, **kwargs)
File "C:\Python310\lib\site-packages\click\core.py", line 782, in main
rv = self.invoke(ctx)
File "C:\Python310\lib\site-packages\click\core.py", line 1066, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "C:\Python310\lib\site-packages\click\core.py", line 610, in invoke
return callback(*args, **kwargs)
File "C:\Python310\lib\site-packages\telepathy\telepathy.py", line 1759, in cli
client.loop.run_until_complete(main())
File "C:\Python310\lib\asyncio\base_events.py", line 646, in run_until_complete
return future.result()
File "C:\Python310\lib\site-packages\telepathy\telepathy.py", line 407, in main
name = entity.title
AttributeError: 'User' object has no attribute 'title'

Edgelist generate error

Latest Telepathy version, latest Ubuntu patches
When I run the command, it work, but at the end it generate some error, the file edgelist.csv is created but I don't know if other files need to be created (node.csv). Also the user list is not created inside the folder
xxxxxx:~$ telepathy -t goutertropical -f

      ______     __                 __  __
     /_  __/__  / /__  ____  ____ _/ /_/ /_  __  __
      / / / _ \/ / _ \/ __ \/ __ `/ __/ __ \/ / / /
     / / /  __/ /  __/ /_/ / /_/ / /_/ / / / /_/ /
    /_/  \___/_/\___/ .___/\__,_/\__/_/ /_/\__, /
                   /_/                    /____/
    -- An OSINT toolkit for investigating Telegram chats.
    -- Developed by @jordanwildon | Version 2.3.2.

[!] Performing basic scan
[!] Forwards will be fetched
[-] Fetching details for goutertropical...
┬ Chat details
├ Title: GRIOT
├ Description: "DU PORC"
├ Translated Description: N/A
├ Total participants: 416
├ Username: goutertropical
├ URL: http://t.me/goutertropical
├ Chat type: Channel
├ Chat id: 1426272611
├ Access hash: -1181623613396063021
├ Scam: False
├ First post date: 2022-10-30T14:55:52+00:00
└ Restrictions: None
[-] Calculating number of forwarded messages...
[-] Fetching forwarded messages...
[-] Progress: |██████████████████▍⚠︎| (!) 22/24 [92%] in 13.4s (1.64/s
[+] Forward scrape complete
┬ Statistics
Traceback (most recent call last):
File "/home/xxx/.local/bin/telepathy", line 8, in
sys.exit(cli())
File "/home/xxx/.local/lib/python3.10/site-packages/click/core.py", line 829, in call
return self.main(*args, **kwargs)
File "/home/xxx/.local/lib/python3.10/site-packages/click/core.py", line 782, in main
rv = self.invoke(ctx)
File "/home/xxx/.local/lib/python3.10/site-packages/click/core.py", line 1066, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/home/xxx/.local/lib/python3.10/site-packages/click/core.py", line 610, in invoke
return callback(*args, **kwargs)
File "/home/xxx/.local/lib/python3.10/site-packages/telepathy/telepathy.py", line 1740, in cli
client.loop.run_until_complete(main())
File "/usr/lib/python3.10/asyncio/base_events.py", line 646, in run_until_complete
return future.result()
File "/home/xxx/.local/lib/python3.10/site-packages/telepathy/telepathy.py", line 784, in main
print_shell("forwarder_stat",report_forward)
File "/home/xxx/.local/lib/python3.10/site-packages/telepathy/utils.py", line 325, in print_shell
" ├ Forwarded messages found: ", str(obj.forward_count)
AttributeError: 'Object' object has no attribute 'forward_count'. Did you mean: 'forward_four'?

Hi guys,

what to do about it?

Traceback (most recent call last):
File "", line 198, in run_module_as_main
File "", line 88, in run_code
File "C:\Users\Admin-PC\AppData\Local\Programs\Python\Python311\Scripts\pip3.exe_main
.py", line 4, in
File "C:\Users\Admin-PC\AppData\Local\Programs\Python\Python311\Lib\site-packages\pip_internal_init
.py", line 4, in
from pip._internal.utils import log
File "C:\Users\Admin-PC\AppData\Local\Programs\Python\Python311\Lib\site-packages\pip_internal\utils_log.py", line 8, in
import logging
File "C:\Users\Admin-PC\AppData\Local\Programs\Python\Python311\Lib\logging_init
.py", line 43, in
import threading
File "C:\Users\Admin-PC\AppData\Local\Programs\Python\Python311\Lib\threading.py", line 974
else:
^
IndentationError: expected an indented block after 'try' statement on line 973

Love the tool! How about a CLI?

Love the suite of tools here, having just come from a role that featured quite a few investigations of Telegram. The scripts seem easy to use, but I bet they could be made even easier with a basically CLI around everything. I didn't see a contributing.md in the repo, so I figured I would ask here: would you be interested in me adding a click CLI wrapper around this? I haven't spec'd anything out, and I'm happy to do so - from what I see, I think it could be done in a weekend project.

Issues

Traceback (most recent call last):
File "/data/data/com.termux/files/home/Telepathy/telepathy.py", line 45, in
exec(open("members.py").read())
File "", line 32, in
File "/data/data/com.termux/files/usr/lib/python3.10/site-packages/telethon/sync.py", line 39, in syncified
return loop.run_until_complete(coro)
File "/data/data/com.termux/files/usr/lib/python3.10/asyncio/base_events.py", line 646, in run_until_complete
return future.result()
File "/data/data/com.termux/files/usr/lib/python3.10/site-packages/telethon/client/auth.py", line 368, in sign_in
result = await self(request)
File "/data/data/com.termux/files/usr/lib/python3.10/site-packages/telethon/client/users.py", line 30, in call
return await self._call(self._sender, request, ordered=ordered)
File "/data/data/com.termux/files/usr/lib/python3.10/site-packages/telethon/client/users.py", line 79, in _call
result = await future
telethon.errors.rpcbaseerrors.AuthKeyError: RPCError 406: UPDATE_APP_TO_LOGIN (caused by SignInRequest)
Segmentation fault

Please advise how to correct this error

archiver does not safe anything

Hi,

maybe I'm doing something wrong.

I installed Telepathy several weeks ago and just updated it using git pull. Then, I added my API details.

I created a to_archive.csv using libre office on my ubuntu VM. I wrote "To" in the field A1, then saved as csv whithout any further changes.

Then I run the launcher, then choose the archiver.

This is my Terminal:

Pick a number:1
Loading Batch chat archiver ...
Launching batch chat archiver
Welcome to the Telepathy archiving tool. This tool will archive Telegram chats based on a list.
Do you want to print messages to terminal while Telepathy runs? (y/n)y
Do you want to archive media content? (y/n)y
Archiving chats...
List archived successfully
Do you want to archive more groups? (y/n)y
Restarting...

But there is nothing new in my CSV and I don't see any new files in my Telepathy folder or in the folder in which Telepathy is saved in.

As I understand, the tool should have saved a group I'm in. My account is in only one group. Also, that account had never a private chat with anything.

What am I getting wrong?

Telethon Version incompatibility error

The error he gave after logging in

name = entity.title AttributeError: 'User' object has no attribute 'title'

Telepathy Version 2.0.0
Telethon Version 1.24.0

What are you using in the stable version of the telethon?

can you share the requirements file to install a stable version of the libraries you use for telepathy?

Telepathy is not recognized as a command.

Hello, I have downloaded the repository and installed the dependencies pip3 install telepathy.
I try to start the script with the test command telepathy -t durov but it returns this error telepathy: command not found
I'm running everything from Ubuntu WSL.
Thanks in advance

Phone number ban with user lookup

hi
i try python3 telepathy.py -u telegramID

but any user are uknown :

[+] User details for 1XXXXXX
[!] User not found, this is likely because Telepathy has not encountered them yet.

and after more test banned :

telethon.errors.rpcerrorlist.PhoneNumberBannedError: The used phone number has been banned from Telegram and cannot be used anymore. Maybe check https://www.telegram.org/faq_spam (caused by SendCodeRequest)
Erreur de segmentation (core dumped)

😢
thx for your project, best regard

TypeError: 'ChannelParticipants' object is not subscriptable

Traceback (most recent call last):
File "C:\Users\visha\PycharmProjects\test\pythonProject2\Other Work\Error Fixing 6.py", line 65, in
all_participants = client.get_participants(target_group)
File "C:\Paython 39\lib\site-packages\telethon\sync.py", line 39, in syncified
return loop.run_until_complete(coro)
File "C:\Paython 39\lib\asyncio\base_events.py", line 642, in run_until_complete
return future.result()
File "C:\Paython 39\lib\site-packages\telethon\client\chats.py", line 507, in get_participants
return await self.iter_participants(*args, **kwargs).collect()
File "C:\Paython 39\lib\site-packages\telethon\requestiter.py", line 113, in collect
async for message in self:
File "C:\Paython 39\lib\site-packages\telethon\requestiter.py", line 74, in anext
if await self._load_next_chunk():
File "C:\Paython 39\lib\site-packages\telethon\client\chats.py", line 224, in _load_next_chunk
participants = results[i]
TypeError: 'ChannelParticipants' object is not subscriptable

Configuration error

hi i use pipe install and error at the config ->
Enter code: 68842
Traceback (most recent call last):
File "/home/XX/.local/bin/telepathy", line 8, in
sys.exit(cli())
File "/home/XX.local/lib/python3.8/site-packages/click/core.py", line 1130, in call
return self.main(*args, **kwargs)
File "/home/XX/.local/lib/python3.8/site-packages/click/core.py", line 1055, in main
rv = self.invoke(ctx)
File "/home/XX.local/lib/python3.8/site-packages/click/core.py", line 1404, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/home/XX/.local/lib/python3.8/site-packages/click/core.py", line 760, in invoke
return __callback(*args, **kwargs)
File "/home/XX/.local/lib/python3.8/site-packages/telepathy/telepathy.py", line 167, in cli
client.sign_in(code=input(' Enter code: '))
File "/usr/local/lib/python3.8/dist-packages/telethon/sync.py", line 39, in syncified
return loop.run_until_complete(coro)
File "/usr/lib/python3.8/asyncio/base_events.py", line 616, in run_until_complete
return future.result()
File "/usr/local/lib/python3.8/dist-packages/telethon/client/auth.py", line 368, in sign_in
result = await self(request)
File "/usr/local/lib/python3.8/dist-packages/telethon/client/users.py", line 30, in call
return await self._call(self._sender, request, ordered=ordered)
File "/usr/local/lib/python3.8/dist-packages/telethon/client/users.py", line 79, in _call
result = await future
telethon.errors.rpcbaseerrors.AuthKeyError: RPCError 406: UPDATE_APP_TO_LOGIN (caused by SignInRequest)

[Feature Request] Scrape comments on channel posts

Hi,

thanks for developing this nice tool =)

In the upcoming changes you want to implement the ability to scrape comments in channel posts:

Giving the archiver module the ability to archive comments on channel posts.

This would be a nice feature; do you have an idea when it is ready?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.