mirror of
https://github.com/trevorhobenshield/twitter-api-client.git
synced 2025-12-19 18:12:11 -05:00
1585 lines
68 KiB
Plaintext
1585 lines
68 KiB
Plaintext
{
|
||
"cells": [
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "b3505281",
|
||
"metadata": {},
|
||
"source": [
|
||
"### Parsing X data\n",
|
||
"\n",
|
||
"This example is to help illustrate the structure of the response data\n",
|
||
"\n",
|
||
"**Notes**:\n",
|
||
"- The code is extremely slow due to constant calls to `.apply()`\n",
|
||
"- The GraphQL response data is not consistent, the following examples may not work in all cases."
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 1,
|
||
"id": "411feb89",
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": [
|
||
"import pandas as pd\n",
|
||
"from twitter.scraper import Scraper\n",
|
||
"\n",
|
||
"scraper = Scraper(\n",
|
||
" cookies={\n",
|
||
" 'auth_token':...,\n",
|
||
" 'ct0':...,\n",
|
||
" }\n",
|
||
")\n"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "e6f3ab15",
|
||
"metadata": {},
|
||
"source": [
|
||
"### Likes"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 2,
|
||
"id": "5e8b7adb",
|
||
"metadata": {
|
||
"scrolled": true
|
||
},
|
||
"outputs": [
|
||
{
|
||
"name": "stderr",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"Likes: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:02<00:00, 2.40s/it]\n",
|
||
"/tmp/ipykernel_11828/237363432.py:20: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
|
||
" .assign(created_at=lambda x:pd.to_datetime(x['created_at']))\n"
|
||
]
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<style scoped>\n",
|
||
" .dataframe tbody tr th:only-of-type {\n",
|
||
" vertical-align: middle;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe tbody tr th {\n",
|
||
" vertical-align: top;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe thead th {\n",
|
||
" text-align: right;\n",
|
||
" }\n",
|
||
"</style>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr style=\"text-align: right;\">\n",
|
||
" <th></th>\n",
|
||
" <th>user_id_str</th>\n",
|
||
" <th>id_str</th>\n",
|
||
" <th>created_at</th>\n",
|
||
" <th>bookmark_count</th>\n",
|
||
" <th>favorite_count</th>\n",
|
||
" <th>full_text</th>\n",
|
||
" <th>possibly_sensitive</th>\n",
|
||
" <th>quote_count</th>\n",
|
||
" <th>reply_count</th>\n",
|
||
" <th>retweet_count</th>\n",
|
||
" </tr>\n",
|
||
" </thead>\n",
|
||
" <tbody>\n",
|
||
" <tr>\n",
|
||
" <th>0</th>\n",
|
||
" <td>1376951872356024325</td>\n",
|
||
" <td>1776320004465582331</td>\n",
|
||
" <td>2024-04-05 18:44:26+00:00</td>\n",
|
||
" <td>248</td>\n",
|
||
" <td>338</td>\n",
|
||
" <td>Schedule-Free Learning\\nhttps://t.co/HEl6dOcT2...</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>10</td>\n",
|
||
" <td>13</td>\n",
|
||
" <td>56</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>1</th>\n",
|
||
" <td>3278906401</td>\n",
|
||
" <td>1776271459352228062</td>\n",
|
||
" <td>2024-04-05 15:31:32+00:00</td>\n",
|
||
" <td>4</td>\n",
|
||
" <td>74</td>\n",
|
||
" <td>We’ve teamed up with PayPal to offer MetaMask ...</td>\n",
|
||
" <td>NaN</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>6</td>\n",
|
||
" <td>3</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>2</th>\n",
|
||
" <td>4558314927</td>\n",
|
||
" <td>1776232714363871586</td>\n",
|
||
" <td>2024-04-05 12:57:34+00:00</td>\n",
|
||
" <td>29</td>\n",
|
||
" <td>309</td>\n",
|
||
" <td>I like to think of myself as a researcher, but...</td>\n",
|
||
" <td>NaN</td>\n",
|
||
" <td>2</td>\n",
|
||
" <td>7</td>\n",
|
||
" <td>7</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>3</th>\n",
|
||
" <td>13235832</td>\n",
|
||
" <td>1776080884019700108</td>\n",
|
||
" <td>2024-04-05 02:54:15+00:00</td>\n",
|
||
" <td>40</td>\n",
|
||
" <td>932</td>\n",
|
||
" <td>Someone should make a leaderboard for how freq...</td>\n",
|
||
" <td>NaN</td>\n",
|
||
" <td>11</td>\n",
|
||
" <td>47</td>\n",
|
||
" <td>58</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>4</th>\n",
|
||
" <td>1703117848930099200</td>\n",
|
||
" <td>1776041561710837833</td>\n",
|
||
" <td>2024-04-05 00:18:00+00:00</td>\n",
|
||
" <td>93</td>\n",
|
||
" <td>311</td>\n",
|
||
" <td>\"Young woman with blonde hair wearing a backpa...</td>\n",
|
||
" <td>NaN</td>\n",
|
||
" <td>8</td>\n",
|
||
" <td>40</td>\n",
|
||
" <td>11</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>...</th>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>112</th>\n",
|
||
" <td>34792369</td>\n",
|
||
" <td>1740880412795379785</td>\n",
|
||
" <td>2023-12-29 23:40:09+00:00</td>\n",
|
||
" <td>10</td>\n",
|
||
" <td>377</td>\n",
|
||
" <td>Dive into the best of 2023 with Porch Potty on...</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>13</td>\n",
|
||
" <td>99</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>113</th>\n",
|
||
" <td>2329526714</td>\n",
|
||
" <td>1739958754219631031</td>\n",
|
||
" <td>2023-12-27 10:37:48+00:00</td>\n",
|
||
" <td>1078</td>\n",
|
||
" <td>20857</td>\n",
|
||
" <td>What happened in 1970? \\n\\nNixon signed the 19...</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>357</td>\n",
|
||
" <td>739</td>\n",
|
||
" <td>7573</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>114</th>\n",
|
||
" <td>5778712</td>\n",
|
||
" <td>1699446703857045540</td>\n",
|
||
" <td>2023-09-06 15:37:23+00:00</td>\n",
|
||
" <td>135</td>\n",
|
||
" <td>784</td>\n",
|
||
" <td>another way of thinking about this — much of m...</td>\n",
|
||
" <td>False</td>\n",
|
||
" <td>14</td>\n",
|
||
" <td>46</td>\n",
|
||
" <td>34</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>115</th>\n",
|
||
" <td>18570772</td>\n",
|
||
" <td>1642044121341919232</td>\n",
|
||
" <td>2023-04-01 06:00:00+00:00</td>\n",
|
||
" <td>580</td>\n",
|
||
" <td>11854</td>\n",
|
||
" <td>As Beyoncé once said, “If you like it, then yo...</td>\n",
|
||
" <td>NaN</td>\n",
|
||
" <td>123</td>\n",
|
||
" <td>777</td>\n",
|
||
" <td>2321</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>116</th>\n",
|
||
" <td>29873662</td>\n",
|
||
" <td>1383616274693951494</td>\n",
|
||
" <td>2021-04-18 03:00:00+00:00</td>\n",
|
||
" <td>264</td>\n",
|
||
" <td>67730</td>\n",
|
||
" <td>Never. Ever. Buy a tech product based on the p...</td>\n",
|
||
" <td>NaN</td>\n",
|
||
" <td>513</td>\n",
|
||
" <td>1435</td>\n",
|
||
" <td>4066</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"<p>117 rows × 10 columns</p>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
" user_id_str id_str created_at \\\n",
|
||
"0 1376951872356024325 1776320004465582331 2024-04-05 18:44:26+00:00 \n",
|
||
"1 3278906401 1776271459352228062 2024-04-05 15:31:32+00:00 \n",
|
||
"2 4558314927 1776232714363871586 2024-04-05 12:57:34+00:00 \n",
|
||
"3 13235832 1776080884019700108 2024-04-05 02:54:15+00:00 \n",
|
||
"4 1703117848930099200 1776041561710837833 2024-04-05 00:18:00+00:00 \n",
|
||
".. ... ... ... \n",
|
||
"112 34792369 1740880412795379785 2023-12-29 23:40:09+00:00 \n",
|
||
"113 2329526714 1739958754219631031 2023-12-27 10:37:48+00:00 \n",
|
||
"114 5778712 1699446703857045540 2023-09-06 15:37:23+00:00 \n",
|
||
"115 18570772 1642044121341919232 2023-04-01 06:00:00+00:00 \n",
|
||
"116 29873662 1383616274693951494 2021-04-18 03:00:00+00:00 \n",
|
||
"\n",
|
||
" bookmark_count favorite_count \\\n",
|
||
"0 248 338 \n",
|
||
"1 4 74 \n",
|
||
"2 29 309 \n",
|
||
"3 40 932 \n",
|
||
"4 93 311 \n",
|
||
".. ... ... \n",
|
||
"112 10 377 \n",
|
||
"113 1078 20857 \n",
|
||
"114 135 784 \n",
|
||
"115 580 11854 \n",
|
||
"116 264 67730 \n",
|
||
"\n",
|
||
" full_text possibly_sensitive \\\n",
|
||
"0 Schedule-Free Learning\\nhttps://t.co/HEl6dOcT2... False \n",
|
||
"1 We’ve teamed up with PayPal to offer MetaMask ... NaN \n",
|
||
"2 I like to think of myself as a researcher, but... NaN \n",
|
||
"3 Someone should make a leaderboard for how freq... NaN \n",
|
||
"4 \"Young woman with blonde hair wearing a backpa... NaN \n",
|
||
".. ... ... \n",
|
||
"112 Dive into the best of 2023 with Porch Potty on... False \n",
|
||
"113 What happened in 1970? \\n\\nNixon signed the 19... False \n",
|
||
"114 another way of thinking about this — much of m... False \n",
|
||
"115 As Beyoncé once said, “If you like it, then yo... NaN \n",
|
||
"116 Never. Ever. Buy a tech product based on the p... NaN \n",
|
||
"\n",
|
||
" quote_count reply_count retweet_count \n",
|
||
"0 10 13 56 \n",
|
||
"1 0 6 3 \n",
|
||
"2 2 7 7 \n",
|
||
"3 11 47 58 \n",
|
||
"4 8 40 11 \n",
|
||
".. ... ... ... \n",
|
||
"112 1 13 99 \n",
|
||
"113 357 739 7573 \n",
|
||
"114 14 46 34 \n",
|
||
"115 123 777 2321 \n",
|
||
"116 513 1435 4066 \n",
|
||
"\n",
|
||
"[117 rows x 10 columns]"
|
||
]
|
||
},
|
||
"execution_count": 2,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"likes = scraper.likes([33836629],count=100,limit=100)\n",
|
||
"\n",
|
||
"df_likes = (\n",
|
||
" pd.json_normalize(likes, record_path=['data','user','result','timeline_v2','timeline','instructions'])\n",
|
||
" ['entries']\n",
|
||
" .explode()\n",
|
||
" .apply(pd.Series)\n",
|
||
" ['content']\n",
|
||
" .apply(pd.Series)\n",
|
||
" .pipe(lambda df:df[df['__typename']!='TimelineTimelineCursor'])\n",
|
||
" ['itemContent']\n",
|
||
" .apply(pd.Series)\n",
|
||
" ['tweet_results']\n",
|
||
" .apply(pd.Series)\n",
|
||
" ['result']\n",
|
||
" .apply(pd.Series)\n",
|
||
" .pipe(lambda df:df[df['__typename']!='TweetWithVisibilityResults'])\n",
|
||
" ['legacy']\n",
|
||
" .apply(pd.Series)\n",
|
||
" .assign(created_at=lambda x:pd.to_datetime(x['created_at']))\n",
|
||
" .sort_values('created_at', ascending=False)\n",
|
||
" .reset_index(drop=True)\n",
|
||
" [[\n",
|
||
" 'user_id_str',\n",
|
||
" 'id_str',\n",
|
||
" 'created_at',\n",
|
||
" 'bookmark_count',\n",
|
||
" 'favorite_count',\n",
|
||
" 'full_text',\n",
|
||
" 'possibly_sensitive',\n",
|
||
" 'quote_count',\n",
|
||
" 'reply_count',\n",
|
||
" 'retweet_count'\n",
|
||
" ]]\n",
|
||
")\n",
|
||
"df_likes\n",
|
||
"\n"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "57dc49fa",
|
||
"metadata": {},
|
||
"source": [
|
||
"### Tweet Details"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 3,
|
||
"id": "b8abf4e7",
|
||
"metadata": {
|
||
"scrolled": true
|
||
},
|
||
"outputs": [
|
||
{
|
||
"name": "stderr",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"TweetDetail: 100%|██████████████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:04<00:00, 4.06s/it]\n",
|
||
"/tmp/ipykernel_11828/4204966796.py:28: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
|
||
" .assign(created_at=lambda x:pd.to_datetime(x['created_at']))\n"
|
||
]
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<style scoped>\n",
|
||
" .dataframe tbody tr th:only-of-type {\n",
|
||
" vertical-align: middle;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe tbody tr th {\n",
|
||
" vertical-align: top;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe thead th {\n",
|
||
" text-align: right;\n",
|
||
" }\n",
|
||
"</style>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr style=\"text-align: right;\">\n",
|
||
" <th></th>\n",
|
||
" <th>created_at</th>\n",
|
||
" <th>id_str</th>\n",
|
||
" <th>user_id_str</th>\n",
|
||
" <th>full_text</th>\n",
|
||
" <th>favorite_count</th>\n",
|
||
" <th>urls</th>\n",
|
||
" <th>hashtags</th>\n",
|
||
" <th>user_mentions</th>\n",
|
||
" </tr>\n",
|
||
" </thead>\n",
|
||
" <tbody>\n",
|
||
" <tr>\n",
|
||
" <th>0</th>\n",
|
||
" <td>2024-04-05 16:27:24+00:00</td>\n",
|
||
" <td>1776285521603363107</td>\n",
|
||
" <td>307810043</td>\n",
|
||
" <td>Integrate Advanced Image and Video Customizati...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'indices': [105, 112], 'text': 'nodejs'}, {'...</td>\n",
|
||
" <td>[]</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>1</th>\n",
|
||
" <td>2024-04-05 16:27:24+00:00</td>\n",
|
||
" <td>1776285521569865904</td>\n",
|
||
" <td>307810043</td>\n",
|
||
" <td>Integrate Advanced Image and Video Customizati...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'indices': [105, 112], 'text': 'nodejs'}, {'...</td>\n",
|
||
" <td>[]</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>2</th>\n",
|
||
" <td>2024-04-05 16:27:24+00:00</td>\n",
|
||
" <td>1776285521569865904</td>\n",
|
||
" <td>307810043</td>\n",
|
||
" <td>Integrate Advanced Image and Video Customizati...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'indices': [105, 112], 'text': 'nodejs'}, {'...</td>\n",
|
||
" <td>[]</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>3</th>\n",
|
||
" <td>2024-04-05 16:27:24+00:00</td>\n",
|
||
" <td>1776285521603363107</td>\n",
|
||
" <td>307810043</td>\n",
|
||
" <td>Integrate Advanced Image and Video Customizati...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'indices': [105, 112], 'text': 'nodejs'}, {'...</td>\n",
|
||
" <td>[]</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>4</th>\n",
|
||
" <td>2024-04-04 18:39:56+00:00</td>\n",
|
||
" <td>1775956485324849319</td>\n",
|
||
" <td>1594005431164321793</td>\n",
|
||
" <td>Embark on a magical morning adventure with eve...</td>\n",
|
||
" <td>85</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>5</th>\n",
|
||
" <td>2024-04-01 17:24:10+00:00</td>\n",
|
||
" <td>1774850254468436277</td>\n",
|
||
" <td>1773621435199586304</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz Recent...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>6</th>\n",
|
||
" <td>2024-04-01 02:46:28+00:00</td>\n",
|
||
" <td>1774629375121539126</td>\n",
|
||
" <td>1371119512313950210</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz yeah I...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>7</th>\n",
|
||
" <td>2024-03-31 00:20:12+00:00</td>\n",
|
||
" <td>1774230175238197456</td>\n",
|
||
" <td>1316295394146410497</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz Colab ...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>8</th>\n",
|
||
" <td>2024-03-29 23:47:06+00:00</td>\n",
|
||
" <td>1773859460139855938</td>\n",
|
||
" <td>911238967030403073</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz I was ...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>9</th>\n",
|
||
" <td>2024-03-29 01:23:42+00:00</td>\n",
|
||
" <td>1773521382187717067</td>\n",
|
||
" <td>1231466530375970816</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz 👀</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>10</th>\n",
|
||
" <td>2024-03-25 13:33:50+00:00</td>\n",
|
||
" <td>1772255574006153365</td>\n",
|
||
" <td>1635022673167122433</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz Hi! I ...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>11</th>\n",
|
||
" <td>2024-03-24 13:01:04+00:00</td>\n",
|
||
" <td>1771884942517059691</td>\n",
|
||
" <td>16598957</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz What’s...</td>\n",
|
||
" <td>3</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>12</th>\n",
|
||
" <td>2024-03-21 16:41:59+00:00</td>\n",
|
||
" <td>1770853370577735863</td>\n",
|
||
" <td>3236488643</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz Now th...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>13</th>\n",
|
||
" <td>2024-03-21 10:31:30+00:00</td>\n",
|
||
" <td>1770760137063494060</td>\n",
|
||
" <td>120717378</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz It wou...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>14</th>\n",
|
||
" <td>2024-03-20 20:47:15+00:00</td>\n",
|
||
" <td>1770552707197313391</td>\n",
|
||
" <td>1478897931876921345</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz Geohot...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>15</th>\n",
|
||
" <td>2024-03-20 15:29:54+00:00</td>\n",
|
||
" <td>1770472842561278055</td>\n",
|
||
" <td>1745002150818639872</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz cancel...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>16</th>\n",
|
||
" <td>2024-03-20 15:13:00+00:00</td>\n",
|
||
" <td>1770468590254170338</td>\n",
|
||
" <td>1728044152389079040</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz All I ...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>17</th>\n",
|
||
" <td>2024-03-20 13:42:26+00:00</td>\n",
|
||
" <td>1770445800826404995</td>\n",
|
||
" <td>1435107115</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz Maybe ...</td>\n",
|
||
" <td>3</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>18</th>\n",
|
||
" <td>2024-03-20 12:01:00+00:00</td>\n",
|
||
" <td>1770420272707056005</td>\n",
|
||
" <td>228920764</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz Is Gho...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>19</th>\n",
|
||
" <td>2024-03-20 11:48:41+00:00</td>\n",
|
||
" <td>1770417174982582519</td>\n",
|
||
" <td>1698500379086872576</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz I wond...</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>20</th>\n",
|
||
" <td>2024-03-20 07:46:32+00:00</td>\n",
|
||
" <td>1770356232395891120</td>\n",
|
||
" <td>1324369511710154754</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz Andrej...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>21</th>\n",
|
||
" <td>2024-03-20 07:41:46+00:00</td>\n",
|
||
" <td>1770355035672662490</td>\n",
|
||
" <td>1203777178124591104</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz go geo...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>22</th>\n",
|
||
" <td>2024-03-20 05:04:40+00:00</td>\n",
|
||
" <td>1770315499777212577</td>\n",
|
||
" <td>3062411848</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz make a...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>23</th>\n",
|
||
" <td>2024-03-20 04:21:56+00:00</td>\n",
|
||
" <td>1770304744273383690</td>\n",
|
||
" <td>89958280</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz @readw...</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>24</th>\n",
|
||
" <td>2024-03-20 03:27:07+00:00</td>\n",
|
||
" <td>1770290947886068010</td>\n",
|
||
" <td>1245941997497704450</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz based ...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>25</th>\n",
|
||
" <td>2024-03-20 03:11:18+00:00</td>\n",
|
||
" <td>1770286970259833004</td>\n",
|
||
" <td>1610077781945159681</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz he's a...</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>26</th>\n",
|
||
" <td>2024-03-20 02:49:20+00:00</td>\n",
|
||
" <td>1770281440988508544</td>\n",
|
||
" <td>82467998</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz @abaca...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>27</th>\n",
|
||
" <td>2024-03-20 02:38:31+00:00</td>\n",
|
||
" <td>1770278719942168712</td>\n",
|
||
" <td>1724580443004215296</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz I love...</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>28</th>\n",
|
||
" <td>2024-03-20 00:41:02+00:00</td>\n",
|
||
" <td>1770249155031547925</td>\n",
|
||
" <td>1765646589794607104</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz I now ...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>29</th>\n",
|
||
" <td>2024-03-20 00:01:19+00:00</td>\n",
|
||
" <td>1770239159703122342</td>\n",
|
||
" <td>246453725</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz woo An...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>30</th>\n",
|
||
" <td>2024-03-19 21:45:05+00:00</td>\n",
|
||
" <td>1770204873331470581</td>\n",
|
||
" <td>269968418</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz 🙏</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>31</th>\n",
|
||
" <td>2024-03-19 20:42:21+00:00</td>\n",
|
||
" <td>1770189088395538880</td>\n",
|
||
" <td>1263378123808075776</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz Would ...</td>\n",
|
||
" <td>4</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>32</th>\n",
|
||
" <td>2024-03-19 20:28:11+00:00</td>\n",
|
||
" <td>1770185522566070672</td>\n",
|
||
" <td>1051571484466900992</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz mainst...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>33</th>\n",
|
||
" <td>2024-03-19 20:14:52+00:00</td>\n",
|
||
" <td>1770182169098416353</td>\n",
|
||
" <td>1283700032512770048</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz He mak...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>34</th>\n",
|
||
" <td>2024-03-19 19:38:05+00:00</td>\n",
|
||
" <td>1770172912655339733</td>\n",
|
||
" <td>1195245650746626048</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz karpat...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>35</th>\n",
|
||
" <td>2024-03-19 19:33:41+00:00</td>\n",
|
||
" <td>1770171804616642889</td>\n",
|
||
" <td>1187420166373687297</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz Noted</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>36</th>\n",
|
||
" <td>2024-03-19 19:30:45+00:00</td>\n",
|
||
" <td>1770171066834387361</td>\n",
|
||
" <td>1512519426679218185</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz Nothin...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>37</th>\n",
|
||
" <td>2024-03-19 19:18:12+00:00</td>\n",
|
||
" <td>1770167908858994796</td>\n",
|
||
" <td>1290932959084675073</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz A true...</td>\n",
|
||
" <td>2</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>38</th>\n",
|
||
" <td>2024-03-19 19:17:56+00:00</td>\n",
|
||
" <td>1770167843704721676</td>\n",
|
||
" <td>23503850</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz watchi...</td>\n",
|
||
" <td>17</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>39</th>\n",
|
||
" <td>2024-03-19 19:17:24+00:00</td>\n",
|
||
" <td>1770167709470241108</td>\n",
|
||
" <td>996745767384698885</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz Andrej...</td>\n",
|
||
" <td>2</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>40</th>\n",
|
||
" <td>2024-03-19 19:14:55+00:00</td>\n",
|
||
" <td>1770167084829299080</td>\n",
|
||
" <td>1689409906594463744</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz image ...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>41</th>\n",
|
||
" <td>2024-03-19 19:14:09+00:00</td>\n",
|
||
" <td>1770166890117153088</td>\n",
|
||
" <td>1041076799386648576</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz Taps s...</td>\n",
|
||
" <td>0</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>42</th>\n",
|
||
" <td>2024-03-19 19:13:43+00:00</td>\n",
|
||
" <td>1770166781233266825</td>\n",
|
||
" <td>4483798048</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz Andrej...</td>\n",
|
||
" <td>12</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>43</th>\n",
|
||
" <td>2024-03-19 19:13:17+00:00</td>\n",
|
||
" <td>1770166673066058195</td>\n",
|
||
" <td>33836629</td>\n",
|
||
" <td>@hiberfile_sys @__tinygrad__ @realGeorgeHotz l...</td>\n",
|
||
" <td>170</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '7780132', 'name': 'Charles Smith'...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>44</th>\n",
|
||
" <td>2024-03-19 19:11:28+00:00</td>\n",
|
||
" <td>1770166216608321744</td>\n",
|
||
" <td>7780132</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz I was ...</td>\n",
|
||
" <td>80</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>45</th>\n",
|
||
" <td>2024-03-19 19:11:01+00:00</td>\n",
|
||
" <td>1770166100648423619</td>\n",
|
||
" <td>1488855033479376902</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz that’s...</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>46</th>\n",
|
||
" <td>2024-03-19 19:09:56+00:00</td>\n",
|
||
" <td>1770165830195548452</td>\n",
|
||
" <td>1963466798</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz I coul...</td>\n",
|
||
" <td>122</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>47</th>\n",
|
||
" <td>2024-03-19 19:08:25+00:00</td>\n",
|
||
" <td>1770165447360451043</td>\n",
|
||
" <td>1017486609707667456</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz this b...</td>\n",
|
||
" <td>10</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>48</th>\n",
|
||
" <td>2024-03-19 19:08:12+00:00</td>\n",
|
||
" <td>1770165394285724112</td>\n",
|
||
" <td>1674187388825006082</td>\n",
|
||
" <td>@karpathy @realGeorgeHotz Thanks!\\n\\nYea it's ...</td>\n",
|
||
" <td>288</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>49</th>\n",
|
||
" <td>2024-03-19 19:07:06+00:00</td>\n",
|
||
" <td>1770165118061408280</td>\n",
|
||
" <td>6470462</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz You sh...</td>\n",
|
||
" <td>22</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>50</th>\n",
|
||
" <td>2024-03-19 19:06:54+00:00</td>\n",
|
||
" <td>1770165065158717946</td>\n",
|
||
" <td>1308474693339447296</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz geohot...</td>\n",
|
||
" <td>72</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>51</th>\n",
|
||
" <td>2024-03-19 19:06:18+00:00</td>\n",
|
||
" <td>1770164915778605265</td>\n",
|
||
" <td>1518031440302284802</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz Has an...</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>52</th>\n",
|
||
" <td>2024-03-19 19:06:06+00:00</td>\n",
|
||
" <td>1770164864217948525</td>\n",
|
||
" <td>1695180583695949824</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz Who’s ...</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>53</th>\n",
|
||
" <td>2024-03-19 19:04:54+00:00</td>\n",
|
||
" <td>1770164561930273009</td>\n",
|
||
" <td>24418897</td>\n",
|
||
" <td>@karpathy @__tinygrad__ @realGeorgeHotz 👀</td>\n",
|
||
" <td>1</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[]</td>\n",
|
||
" <td>[{'id_str': '33836629', 'name': 'Andrej Karpat...</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
" created_at id_str user_id_str \\\n",
|
||
"0 2024-04-05 16:27:24+00:00 1776285521603363107 307810043 \n",
|
||
"1 2024-04-05 16:27:24+00:00 1776285521569865904 307810043 \n",
|
||
"2 2024-04-05 16:27:24+00:00 1776285521569865904 307810043 \n",
|
||
"3 2024-04-05 16:27:24+00:00 1776285521603363107 307810043 \n",
|
||
"4 2024-04-04 18:39:56+00:00 1775956485324849319 1594005431164321793 \n",
|
||
"5 2024-04-01 17:24:10+00:00 1774850254468436277 1773621435199586304 \n",
|
||
"6 2024-04-01 02:46:28+00:00 1774629375121539126 1371119512313950210 \n",
|
||
"7 2024-03-31 00:20:12+00:00 1774230175238197456 1316295394146410497 \n",
|
||
"8 2024-03-29 23:47:06+00:00 1773859460139855938 911238967030403073 \n",
|
||
"9 2024-03-29 01:23:42+00:00 1773521382187717067 1231466530375970816 \n",
|
||
"10 2024-03-25 13:33:50+00:00 1772255574006153365 1635022673167122433 \n",
|
||
"11 2024-03-24 13:01:04+00:00 1771884942517059691 16598957 \n",
|
||
"12 2024-03-21 16:41:59+00:00 1770853370577735863 3236488643 \n",
|
||
"13 2024-03-21 10:31:30+00:00 1770760137063494060 120717378 \n",
|
||
"14 2024-03-20 20:47:15+00:00 1770552707197313391 1478897931876921345 \n",
|
||
"15 2024-03-20 15:29:54+00:00 1770472842561278055 1745002150818639872 \n",
|
||
"16 2024-03-20 15:13:00+00:00 1770468590254170338 1728044152389079040 \n",
|
||
"17 2024-03-20 13:42:26+00:00 1770445800826404995 1435107115 \n",
|
||
"18 2024-03-20 12:01:00+00:00 1770420272707056005 228920764 \n",
|
||
"19 2024-03-20 11:48:41+00:00 1770417174982582519 1698500379086872576 \n",
|
||
"20 2024-03-20 07:46:32+00:00 1770356232395891120 1324369511710154754 \n",
|
||
"21 2024-03-20 07:41:46+00:00 1770355035672662490 1203777178124591104 \n",
|
||
"22 2024-03-20 05:04:40+00:00 1770315499777212577 3062411848 \n",
|
||
"23 2024-03-20 04:21:56+00:00 1770304744273383690 89958280 \n",
|
||
"24 2024-03-20 03:27:07+00:00 1770290947886068010 1245941997497704450 \n",
|
||
"25 2024-03-20 03:11:18+00:00 1770286970259833004 1610077781945159681 \n",
|
||
"26 2024-03-20 02:49:20+00:00 1770281440988508544 82467998 \n",
|
||
"27 2024-03-20 02:38:31+00:00 1770278719942168712 1724580443004215296 \n",
|
||
"28 2024-03-20 00:41:02+00:00 1770249155031547925 1765646589794607104 \n",
|
||
"29 2024-03-20 00:01:19+00:00 1770239159703122342 246453725 \n",
|
||
"30 2024-03-19 21:45:05+00:00 1770204873331470581 269968418 \n",
|
||
"31 2024-03-19 20:42:21+00:00 1770189088395538880 1263378123808075776 \n",
|
||
"32 2024-03-19 20:28:11+00:00 1770185522566070672 1051571484466900992 \n",
|
||
"33 2024-03-19 20:14:52+00:00 1770182169098416353 1283700032512770048 \n",
|
||
"34 2024-03-19 19:38:05+00:00 1770172912655339733 1195245650746626048 \n",
|
||
"35 2024-03-19 19:33:41+00:00 1770171804616642889 1187420166373687297 \n",
|
||
"36 2024-03-19 19:30:45+00:00 1770171066834387361 1512519426679218185 \n",
|
||
"37 2024-03-19 19:18:12+00:00 1770167908858994796 1290932959084675073 \n",
|
||
"38 2024-03-19 19:17:56+00:00 1770167843704721676 23503850 \n",
|
||
"39 2024-03-19 19:17:24+00:00 1770167709470241108 996745767384698885 \n",
|
||
"40 2024-03-19 19:14:55+00:00 1770167084829299080 1689409906594463744 \n",
|
||
"41 2024-03-19 19:14:09+00:00 1770166890117153088 1041076799386648576 \n",
|
||
"42 2024-03-19 19:13:43+00:00 1770166781233266825 4483798048 \n",
|
||
"43 2024-03-19 19:13:17+00:00 1770166673066058195 33836629 \n",
|
||
"44 2024-03-19 19:11:28+00:00 1770166216608321744 7780132 \n",
|
||
"45 2024-03-19 19:11:01+00:00 1770166100648423619 1488855033479376902 \n",
|
||
"46 2024-03-19 19:09:56+00:00 1770165830195548452 1963466798 \n",
|
||
"47 2024-03-19 19:08:25+00:00 1770165447360451043 1017486609707667456 \n",
|
||
"48 2024-03-19 19:08:12+00:00 1770165394285724112 1674187388825006082 \n",
|
||
"49 2024-03-19 19:07:06+00:00 1770165118061408280 6470462 \n",
|
||
"50 2024-03-19 19:06:54+00:00 1770165065158717946 1308474693339447296 \n",
|
||
"51 2024-03-19 19:06:18+00:00 1770164915778605265 1518031440302284802 \n",
|
||
"52 2024-03-19 19:06:06+00:00 1770164864217948525 1695180583695949824 \n",
|
||
"53 2024-03-19 19:04:54+00:00 1770164561930273009 24418897 \n",
|
||
"\n",
|
||
" full_text favorite_count urls \\\n",
|
||
"0 Integrate Advanced Image and Video Customizati... 0 [] \n",
|
||
"1 Integrate Advanced Image and Video Customizati... 0 [] \n",
|
||
"2 Integrate Advanced Image and Video Customizati... 0 [] \n",
|
||
"3 Integrate Advanced Image and Video Customizati... 0 [] \n",
|
||
"4 Embark on a magical morning adventure with eve... 85 [] \n",
|
||
"5 @karpathy @__tinygrad__ @realGeorgeHotz Recent... 0 [] \n",
|
||
"6 @karpathy @__tinygrad__ @realGeorgeHotz yeah I... 0 [] \n",
|
||
"7 @karpathy @__tinygrad__ @realGeorgeHotz Colab ... 0 [] \n",
|
||
"8 @karpathy @__tinygrad__ @realGeorgeHotz I was ... 0 [] \n",
|
||
"9 @karpathy @__tinygrad__ @realGeorgeHotz 👀 0 [] \n",
|
||
"10 @karpathy @__tinygrad__ @realGeorgeHotz Hi! I ... 0 [] \n",
|
||
"11 @karpathy @__tinygrad__ @realGeorgeHotz What’s... 3 [] \n",
|
||
"12 @karpathy @__tinygrad__ @realGeorgeHotz Now th... 0 [] \n",
|
||
"13 @karpathy @__tinygrad__ @realGeorgeHotz It wou... 0 [] \n",
|
||
"14 @karpathy @__tinygrad__ @realGeorgeHotz Geohot... 0 [] \n",
|
||
"15 @karpathy @__tinygrad__ @realGeorgeHotz cancel... 0 [] \n",
|
||
"16 @karpathy @__tinygrad__ @realGeorgeHotz All I ... 0 [] \n",
|
||
"17 @karpathy @__tinygrad__ @realGeorgeHotz Maybe ... 3 [] \n",
|
||
"18 @karpathy @__tinygrad__ @realGeorgeHotz Is Gho... 0 [] \n",
|
||
"19 @karpathy @__tinygrad__ @realGeorgeHotz I wond... 1 [] \n",
|
||
"20 @karpathy @__tinygrad__ @realGeorgeHotz Andrej... 0 [] \n",
|
||
"21 @karpathy @__tinygrad__ @realGeorgeHotz go geo... 0 [] \n",
|
||
"22 @karpathy @__tinygrad__ @realGeorgeHotz make a... 0 [] \n",
|
||
"23 @karpathy @__tinygrad__ @realGeorgeHotz @readw... 1 [] \n",
|
||
"24 @karpathy @__tinygrad__ @realGeorgeHotz based ... 0 [] \n",
|
||
"25 @karpathy @__tinygrad__ @realGeorgeHotz he's a... 1 [] \n",
|
||
"26 @karpathy @__tinygrad__ @realGeorgeHotz @abaca... 0 [] \n",
|
||
"27 @karpathy @__tinygrad__ @realGeorgeHotz I love... 1 [] \n",
|
||
"28 @karpathy @__tinygrad__ @realGeorgeHotz I now ... 0 [] \n",
|
||
"29 @karpathy @__tinygrad__ @realGeorgeHotz woo An... 0 [] \n",
|
||
"30 @karpathy @__tinygrad__ @realGeorgeHotz 🙏 0 [] \n",
|
||
"31 @karpathy @__tinygrad__ @realGeorgeHotz Would ... 4 [] \n",
|
||
"32 @karpathy @__tinygrad__ @realGeorgeHotz mainst... 0 [] \n",
|
||
"33 @karpathy @__tinygrad__ @realGeorgeHotz He mak... 0 [] \n",
|
||
"34 @karpathy @__tinygrad__ @realGeorgeHotz karpat... 0 [] \n",
|
||
"35 @karpathy @__tinygrad__ @realGeorgeHotz Noted 0 [] \n",
|
||
"36 @karpathy @__tinygrad__ @realGeorgeHotz Nothin... 0 [] \n",
|
||
"37 @karpathy @__tinygrad__ @realGeorgeHotz A true... 2 [] \n",
|
||
"38 @karpathy @__tinygrad__ @realGeorgeHotz watchi... 17 [] \n",
|
||
"39 @karpathy @__tinygrad__ @realGeorgeHotz Andrej... 2 [] \n",
|
||
"40 @karpathy @__tinygrad__ @realGeorgeHotz image ... 0 [] \n",
|
||
"41 @karpathy @__tinygrad__ @realGeorgeHotz Taps s... 0 [] \n",
|
||
"42 @karpathy @__tinygrad__ @realGeorgeHotz Andrej... 12 [] \n",
|
||
"43 @hiberfile_sys @__tinygrad__ @realGeorgeHotz l... 170 [] \n",
|
||
"44 @karpathy @__tinygrad__ @realGeorgeHotz I was ... 80 [] \n",
|
||
"45 @karpathy @__tinygrad__ @realGeorgeHotz that’s... 1 [] \n",
|
||
"46 @karpathy @__tinygrad__ @realGeorgeHotz I coul... 122 [] \n",
|
||
"47 @karpathy @__tinygrad__ @realGeorgeHotz this b... 10 [] \n",
|
||
"48 @karpathy @realGeorgeHotz Thanks!\\n\\nYea it's ... 288 [] \n",
|
||
"49 @karpathy @__tinygrad__ @realGeorgeHotz You sh... 22 [] \n",
|
||
"50 @karpathy @__tinygrad__ @realGeorgeHotz geohot... 72 [] \n",
|
||
"51 @karpathy @__tinygrad__ @realGeorgeHotz Has an... 1 [] \n",
|
||
"52 @karpathy @__tinygrad__ @realGeorgeHotz Who’s ... 1 [] \n",
|
||
"53 @karpathy @__tinygrad__ @realGeorgeHotz 👀 1 [] \n",
|
||
"\n",
|
||
" hashtags \\\n",
|
||
"0 [{'indices': [105, 112], 'text': 'nodejs'}, {'... \n",
|
||
"1 [{'indices': [105, 112], 'text': 'nodejs'}, {'... \n",
|
||
"2 [{'indices': [105, 112], 'text': 'nodejs'}, {'... \n",
|
||
"3 [{'indices': [105, 112], 'text': 'nodejs'}, {'... \n",
|
||
"4 [] \n",
|
||
"5 [] \n",
|
||
"6 [] \n",
|
||
"7 [] \n",
|
||
"8 [] \n",
|
||
"9 [] \n",
|
||
"10 [] \n",
|
||
"11 [] \n",
|
||
"12 [] \n",
|
||
"13 [] \n",
|
||
"14 [] \n",
|
||
"15 [] \n",
|
||
"16 [] \n",
|
||
"17 [] \n",
|
||
"18 [] \n",
|
||
"19 [] \n",
|
||
"20 [] \n",
|
||
"21 [] \n",
|
||
"22 [] \n",
|
||
"23 [] \n",
|
||
"24 [] \n",
|
||
"25 [] \n",
|
||
"26 [] \n",
|
||
"27 [] \n",
|
||
"28 [] \n",
|
||
"29 [] \n",
|
||
"30 [] \n",
|
||
"31 [] \n",
|
||
"32 [] \n",
|
||
"33 [] \n",
|
||
"34 [] \n",
|
||
"35 [] \n",
|
||
"36 [] \n",
|
||
"37 [] \n",
|
||
"38 [] \n",
|
||
"39 [] \n",
|
||
"40 [] \n",
|
||
"41 [] \n",
|
||
"42 [] \n",
|
||
"43 [] \n",
|
||
"44 [] \n",
|
||
"45 [] \n",
|
||
"46 [] \n",
|
||
"47 [] \n",
|
||
"48 [] \n",
|
||
"49 [] \n",
|
||
"50 [] \n",
|
||
"51 [] \n",
|
||
"52 [] \n",
|
||
"53 [] \n",
|
||
"\n",
|
||
" user_mentions \n",
|
||
"0 [] \n",
|
||
"1 [] \n",
|
||
"2 [] \n",
|
||
"3 [] \n",
|
||
"4 [] \n",
|
||
"5 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"6 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"7 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"8 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"9 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"10 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"11 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"12 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"13 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"14 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"15 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"16 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"17 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"18 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"19 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"20 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"21 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"22 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"23 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"24 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"25 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"26 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"27 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"28 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"29 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"30 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"31 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"32 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"33 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"34 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"35 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"36 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"37 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"38 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"39 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"40 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"41 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"42 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"43 [{'id_str': '7780132', 'name': 'Charles Smith'... \n",
|
||
"44 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"45 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"46 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"47 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"48 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"49 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"50 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"51 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"52 [{'id_str': '33836629', 'name': 'Andrej Karpat... \n",
|
||
"53 [{'id_str': '33836629', 'name': 'Andrej Karpat... "
|
||
]
|
||
},
|
||
"execution_count": 3,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"tweets_details = scraper.tweets_details([1770164518758633590], count=100, limit=100)\n",
|
||
"\n",
|
||
"df_tweets_details = (\n",
|
||
" pd.json_normalize(tweets_details,record_path=['data','threaded_conversation_with_injections_v2','instructions'])\n",
|
||
" ['entries']\n",
|
||
" .dropna()\n",
|
||
" .explode()\n",
|
||
" .apply(pd.Series)\n",
|
||
" ['content']\n",
|
||
" .apply(pd.Series)\n",
|
||
" ['items']\n",
|
||
" .dropna()\n",
|
||
" .explode()\n",
|
||
" .apply(pd.Series)\n",
|
||
" ['item']\n",
|
||
" .apply(pd.Series)\n",
|
||
" ['itemContent']\n",
|
||
" .apply(pd.Series)\n",
|
||
" .pipe(lambda df:df[df['__typename']!='TimelineTimelineCursor'])\n",
|
||
" ['tweet_results']\n",
|
||
" .apply(pd.Series)\n",
|
||
" ['result']\n",
|
||
" .apply(pd.Series)\n",
|
||
" .pipe(lambda df:df[df['__typename']!='TweetWithVisibilityResults'])\n",
|
||
" ['legacy']\n",
|
||
" .apply(pd.Series)\n",
|
||
" .pipe(lambda x: pd.concat([x, x['entities'].apply(pd.Series)],axis=1))\n",
|
||
" .assign(created_at=lambda x:pd.to_datetime(x['created_at']))\n",
|
||
" .sort_values('created_at', ascending=False)\n",
|
||
" .reset_index(drop=True)\n",
|
||
" .drop('entities',axis=1)\n",
|
||
" [[\n",
|
||
" 'created_at',\n",
|
||
" 'id_str',\n",
|
||
" 'user_id_str',\n",
|
||
" 'full_text',\n",
|
||
" 'favorite_count',\n",
|
||
" 'urls',\n",
|
||
" 'hashtags',\n",
|
||
" 'user_mentions',\n",
|
||
" ]]\n",
|
||
"\n",
|
||
")\n",
|
||
"df_tweets_details\n"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "markdown",
|
||
"id": "c95a637b",
|
||
"metadata": {},
|
||
"source": [
|
||
"### Favoriters"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 4,
|
||
"id": "cb7cd271",
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"name": "stderr",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"Favoriters: 100%|███████████████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:01<00:00, 1.22s/it]\n",
|
||
"/tmp/ipykernel_11828/1064589959.py:19: UserWarning: Could not infer format, so each element will be parsed individually, falling back to `dateutil`. To ensure parsing is consistent and as-expected, please specify a format.\n",
|
||
" .assign(created_at=lambda x:pd.to_datetime(x['created_at']))\n"
|
||
]
|
||
},
|
||
{
|
||
"data": {
|
||
"text/html": [
|
||
"<div>\n",
|
||
"<style scoped>\n",
|
||
" .dataframe tbody tr th:only-of-type {\n",
|
||
" vertical-align: middle;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe tbody tr th {\n",
|
||
" vertical-align: top;\n",
|
||
" }\n",
|
||
"\n",
|
||
" .dataframe thead th {\n",
|
||
" text-align: right;\n",
|
||
" }\n",
|
||
"</style>\n",
|
||
"<table border=\"1\" class=\"dataframe\">\n",
|
||
" <thead>\n",
|
||
" <tr style=\"text-align: right;\">\n",
|
||
" <th></th>\n",
|
||
" <th>rest_id</th>\n",
|
||
" <th>created_at</th>\n",
|
||
" <th>screen_name</th>\n",
|
||
" <th>location</th>\n",
|
||
" <th>followers_count</th>\n",
|
||
" <th>statuses_count</th>\n",
|
||
" <th>favourites_count</th>\n",
|
||
" <th>media_count</th>\n",
|
||
" <th>statuses_count</th>\n",
|
||
" </tr>\n",
|
||
" </thead>\n",
|
||
" <tbody>\n",
|
||
" <tr>\n",
|
||
" <th>0</th>\n",
|
||
" <td>1774149870552580096</td>\n",
|
||
" <td>2024-03-30 19:01:21+00:00</td>\n",
|
||
" <td>k_weissgerber</td>\n",
|
||
" <td></td>\n",
|
||
" <td>4.0</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>18.0</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>1</th>\n",
|
||
" <td>1772830183797440513</td>\n",
|
||
" <td>2024-03-27 03:37:25+00:00</td>\n",
|
||
" <td>kategerrald</td>\n",
|
||
" <td></td>\n",
|
||
" <td>32.0</td>\n",
|
||
" <td>173.0</td>\n",
|
||
" <td>408.0</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>173.0</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>2</th>\n",
|
||
" <td>1772286724577837056</td>\n",
|
||
" <td>2024-03-25 15:37:39+00:00</td>\n",
|
||
" <td>DaringDott89944</td>\n",
|
||
" <td></td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>1.0</td>\n",
|
||
" <td>56.0</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>1.0</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>3</th>\n",
|
||
" <td>1771785767729389568</td>\n",
|
||
" <td>2024-03-24 06:27:00+00:00</td>\n",
|
||
" <td>ImeranceL33140</td>\n",
|
||
" <td></td>\n",
|
||
" <td>2.0</td>\n",
|
||
" <td>1.0</td>\n",
|
||
" <td>60.0</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>1.0</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>4</th>\n",
|
||
" <td>1771782246837678080</td>\n",
|
||
" <td>2024-03-24 06:13:01+00:00</td>\n",
|
||
" <td>UsHarper77813</td>\n",
|
||
" <td></td>\n",
|
||
" <td>2.0</td>\n",
|
||
" <td>1.0</td>\n",
|
||
" <td>66.0</td>\n",
|
||
" <td>0.0</td>\n",
|
||
" <td>1.0</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>...</th>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" <td>...</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>163</th>\n",
|
||
" <td>15040790</td>\n",
|
||
" <td>2008-06-07 19:23:56+00:00</td>\n",
|
||
" <td>ssaroha</td>\n",
|
||
" <td>San Jose, CA</td>\n",
|
||
" <td>80.0</td>\n",
|
||
" <td>599.0</td>\n",
|
||
" <td>1777.0</td>\n",
|
||
" <td>6.0</td>\n",
|
||
" <td>599.0</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>164</th>\n",
|
||
" <td>14578396</td>\n",
|
||
" <td>2008-04-29 01:12:13+00:00</td>\n",
|
||
" <td>tim_waggoner</td>\n",
|
||
" <td>Planet Earth</td>\n",
|
||
" <td>495.0</td>\n",
|
||
" <td>332.0</td>\n",
|
||
" <td>337.0</td>\n",
|
||
" <td>16.0</td>\n",
|
||
" <td>332.0</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>165</th>\n",
|
||
" <td>6452692</td>\n",
|
||
" <td>2007-05-30 20:13:53+00:00</td>\n",
|
||
" <td>goodwintercrop</td>\n",
|
||
" <td></td>\n",
|
||
" <td>338.0</td>\n",
|
||
" <td>972.0</td>\n",
|
||
" <td>3874.0</td>\n",
|
||
" <td>48.0</td>\n",
|
||
" <td>972.0</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>166</th>\n",
|
||
" <td>5141381</td>\n",
|
||
" <td>2007-04-18 17:46:19+00:00</td>\n",
|
||
" <td>hangel</td>\n",
|
||
" <td>Medellin, Colombia</td>\n",
|
||
" <td>493.0</td>\n",
|
||
" <td>9853.0</td>\n",
|
||
" <td>16483.0</td>\n",
|
||
" <td>669.0</td>\n",
|
||
" <td>9853.0</td>\n",
|
||
" </tr>\n",
|
||
" <tr>\n",
|
||
" <th>167</th>\n",
|
||
" <td>71283</td>\n",
|
||
" <td>2006-12-15 17:45:30+00:00</td>\n",
|
||
" <td>mkamp</td>\n",
|
||
" <td>Frankfurt, Germany</td>\n",
|
||
" <td>451.0</td>\n",
|
||
" <td>1181.0</td>\n",
|
||
" <td>10758.0</td>\n",
|
||
" <td>17.0</td>\n",
|
||
" <td>1181.0</td>\n",
|
||
" </tr>\n",
|
||
" </tbody>\n",
|
||
"</table>\n",
|
||
"<p>168 rows × 9 columns</p>\n",
|
||
"</div>"
|
||
],
|
||
"text/plain": [
|
||
" rest_id created_at screen_name \\\n",
|
||
"0 1774149870552580096 2024-03-30 19:01:21+00:00 k_weissgerber \n",
|
||
"1 1772830183797440513 2024-03-27 03:37:25+00:00 kategerrald \n",
|
||
"2 1772286724577837056 2024-03-25 15:37:39+00:00 DaringDott89944 \n",
|
||
"3 1771785767729389568 2024-03-24 06:27:00+00:00 ImeranceL33140 \n",
|
||
"4 1771782246837678080 2024-03-24 06:13:01+00:00 UsHarper77813 \n",
|
||
".. ... ... ... \n",
|
||
"163 15040790 2008-06-07 19:23:56+00:00 ssaroha \n",
|
||
"164 14578396 2008-04-29 01:12:13+00:00 tim_waggoner \n",
|
||
"165 6452692 2007-05-30 20:13:53+00:00 goodwintercrop \n",
|
||
"166 5141381 2007-04-18 17:46:19+00:00 hangel \n",
|
||
"167 71283 2006-12-15 17:45:30+00:00 mkamp \n",
|
||
"\n",
|
||
" location followers_count statuses_count favourites_count \\\n",
|
||
"0 4.0 0.0 18.0 \n",
|
||
"1 32.0 173.0 408.0 \n",
|
||
"2 0.0 1.0 56.0 \n",
|
||
"3 2.0 1.0 60.0 \n",
|
||
"4 2.0 1.0 66.0 \n",
|
||
".. ... ... ... ... \n",
|
||
"163 San Jose, CA 80.0 599.0 1777.0 \n",
|
||
"164 Planet Earth 495.0 332.0 337.0 \n",
|
||
"165 338.0 972.0 3874.0 \n",
|
||
"166 Medellin, Colombia 493.0 9853.0 16483.0 \n",
|
||
"167 Frankfurt, Germany 451.0 1181.0 10758.0 \n",
|
||
"\n",
|
||
" media_count statuses_count \n",
|
||
"0 0.0 0.0 \n",
|
||
"1 0.0 173.0 \n",
|
||
"2 0.0 1.0 \n",
|
||
"3 0.0 1.0 \n",
|
||
"4 0.0 1.0 \n",
|
||
".. ... ... \n",
|
||
"163 6.0 599.0 \n",
|
||
"164 16.0 332.0 \n",
|
||
"165 48.0 972.0 \n",
|
||
"166 669.0 9853.0 \n",
|
||
"167 17.0 1181.0 \n",
|
||
"\n",
|
||
"[168 rows x 9 columns]"
|
||
]
|
||
},
|
||
"execution_count": 4,
|
||
"metadata": {},
|
||
"output_type": "execute_result"
|
||
}
|
||
],
|
||
"source": [
|
||
"favoriters = scraper.favoriters([1770164518758633590], count=100, limit=100)\n",
|
||
"\n",
|
||
"df_favoriters = (\n",
|
||
" pd.json_normalize(favoriters,record_path=['data','favoriters_timeline','timeline', 'instructions'])\n",
|
||
" ['entries']\n",
|
||
" .explode()\n",
|
||
" .apply(pd.Series)\n",
|
||
" ['content']\n",
|
||
" .apply(pd.Series)\n",
|
||
" .pipe(lambda df:df[df['__typename']!='TimelineTimelineCursor'])\n",
|
||
" ['itemContent']\n",
|
||
" .apply(pd.Series)\n",
|
||
" ['user_results']\n",
|
||
" .apply(pd.Series)\n",
|
||
" ['result']\n",
|
||
" .apply(pd.Series)\n",
|
||
" .pipe(lambda x: pd.concat([x[['rest_id']],x['legacy'].apply(pd.Series)],axis=1))\n",
|
||
" .dropna(subset='created_at')\n",
|
||
" .assign(created_at=lambda x:pd.to_datetime(x['created_at']))\n",
|
||
" .sort_values('created_at', ascending=False)\n",
|
||
" .reset_index(drop=True)\n",
|
||
" [[\n",
|
||
" 'rest_id',\n",
|
||
" 'created_at',\n",
|
||
" 'screen_name',\n",
|
||
" 'location',\n",
|
||
" 'followers_count',\n",
|
||
" 'statuses_count',\n",
|
||
" 'favourites_count',\n",
|
||
" 'media_count',\n",
|
||
" 'statuses_count'\n",
|
||
" ]]\n",
|
||
")\n",
|
||
"df_favoriters"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"id": "a45a8e55",
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": []
|
||
}
|
||
],
|
||
"metadata": {
|
||
"kernelspec": {
|
||
"display_name": "Python 3 (ipykernel)",
|
||
"language": "python",
|
||
"name": "python3"
|
||
},
|
||
"language_info": {
|
||
"codemirror_mode": {
|
||
"name": "ipython",
|
||
"version": 3
|
||
},
|
||
"file_extension": ".py",
|
||
"mimetype": "text/x-python",
|
||
"name": "python",
|
||
"nbconvert_exporter": "python",
|
||
"pygments_lexer": "ipython3",
|
||
"version": "3.10.14"
|
||
}
|
||
},
|
||
"nbformat": 4,
|
||
"nbformat_minor": 5
|
||
}
|