Skip to content

Instantly share code, notes, and snippets.

@yungwarlock
Created November 18, 2025 17:27
Show Gist options
  • Select an option

  • Save yungwarlock/835e4928fcec8f1c56835813cc3f7cfa to your computer and use it in GitHub Desktop.

Select an option

Save yungwarlock/835e4928fcec8f1c56835813cc3f7cfa to your computer and use it in GitHub Desktop.
Fun with Common News Crawl.ipynb
Display the source blob
Display the rendered blob
Raw
{
"nbformat": 4,
"nbformat_minor": 0,
"metadata": {
"colab": {
"provenance": [],
"authorship_tag": "ABX9TyNbos/OINtQbXLiw2zacmVR",
"include_colab_link": true
},
"kernelspec": {
"name": "python3",
"display_name": "Python 3"
},
"language_info": {
"name": "python"
}
},
"cells": [
{
"cell_type": "markdown",
"metadata": {
"id": "view-in-github",
"colab_type": "text"
},
"source": [
"<a href=\"https://colab.research.google.com/gist/yungwarlock/835e4928fcec8f1c56835813cc3f7cfa/fun-with-common-news-crawl.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>"
]
},
{
"cell_type": "code",
"source": [
"%pip install -Uq fastwarc trafilatura beautifulsoup4 warcio"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "hLX-jONRrYHp",
"outputId": "c7fa376c-43d9-4fa6-b1ef-3c82c0f6253e"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"\u001b[?25l \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m0.0/40.6 kB\u001b[0m \u001b[31m?\u001b[0m eta \u001b[36m-:--:--\u001b[0m\r\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m40.6/40.6 kB\u001b[0m \u001b[31m2.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n",
"\u001b[?25h"
]
},
{
"output_type": "stream",
"name": "stderr",
"text": [
"\rProcessing batch 5: 0%| | 0/100000 [19:06<?, ?it/s]\n"
]
}
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "SUMEI0DsmFmU",
"outputId": "6fd11717-9e65-42a7-bcb9-ced59143fa05"
},
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"--2025-11-18 06:32:06-- https://data.commoncrawl.org/crawl-data/CC-NEWS/2024/01/warc.paths.gz\n",
"Resolving data.commoncrawl.org (data.commoncrawl.org)... 18.165.83.120, 18.165.83.88, 18.165.83.23, ...\n",
"Connecting to data.commoncrawl.org (data.commoncrawl.org)|18.165.83.120|:443... connected.\n",
"HTTP request sent, awaiting response... 200 OK\n",
"Length: 4659 (4.5K) [binary/octet-stream]\n",
"Saving to: ‘warc.paths.gz’\n",
"\n",
"warc.paths.gz 100%[===================>] 4.55K --.-KB/s in 0s \n",
"\n",
"2025-11-18 06:32:06 (1.39 GB/s) - ‘warc.paths.gz’ saved [4659/4659]\n",
"\n"
]
}
],
"source": [
"!wget https://data.commoncrawl.org/crawl-data/CC-NEWS/2024/01/warc.paths.gz"
]
},
{
"cell_type": "code",
"source": [
"!head warc.paths"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "LfUmFBSDqfhG",
"outputId": "33b77487-e91a-4212-c255-9fa2e718e253"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"crawl-data/CC-NEWS/2024/01/CC-NEWS-20240101002957-01499.warc.gz\n",
"crawl-data/CC-NEWS/2024/01/CC-NEWS-20240101022452-01500.warc.gz\n",
"crawl-data/CC-NEWS/2024/01/CC-NEWS-20240101043757-01501.warc.gz\n",
"crawl-data/CC-NEWS/2024/01/CC-NEWS-20240101063409-01502.warc.gz\n",
"crawl-data/CC-NEWS/2024/01/CC-NEWS-20240101081936-01503.warc.gz\n",
"crawl-data/CC-NEWS/2024/01/CC-NEWS-20240101095421-01504.warc.gz\n",
"crawl-data/CC-NEWS/2024/01/CC-NEWS-20240101112245-01505.warc.gz\n",
"crawl-data/CC-NEWS/2024/01/CC-NEWS-20240101124434-01506.warc.gz\n",
"crawl-data/CC-NEWS/2024/01/CC-NEWS-20240101140441-01507.warc.gz\n",
"crawl-data/CC-NEWS/2024/01/CC-NEWS-20240101152335-01508.warc.gz\n"
]
}
]
},
{
"cell_type": "code",
"source": [
"!wget https://data.commoncrawl.org/crawl-data/CC-NEWS/2024/01/CC-NEWS-20240101002957-01499.warc.gz"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "AtTkk-hOq0Ls",
"outputId": "5ad71e35-3762-425a-c560-3c8440bff8b8"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"--2025-11-18 06:33:57-- https://data.commoncrawl.org/crawl-data/CC-NEWS/2024/01/CC-NEWS-20240101002957-01499.warc.gz\n",
"Resolving data.commoncrawl.org (data.commoncrawl.org)... 13.32.205.112, 13.32.205.86, 13.32.205.69, ...\n",
"Connecting to data.commoncrawl.org (data.commoncrawl.org)|13.32.205.112|:443... connected.\n",
"HTTP request sent, awaiting response... 200 OK\n",
"Length: 1072724753 (1023M) [binary/octet-stream]\n",
"Saving to: ‘CC-NEWS-20240101002957-01499.warc.gz’\n",
"\n",
"CC-NEWS-20240101002 100%[===================>] 1023M 37.3MB/s in 37s \n",
"\n",
"2025-11-18 06:34:34 (27.7 MB/s) - ‘CC-NEWS-20240101002957-01499.warc.gz’ saved [1072724753/1072724753]\n",
"\n"
]
}
]
},
{
"cell_type": "code",
"source": [
"!gunzip /content/CC-NEWS-20240101002957-01499.warc.gz"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "kqhow0Gmrh5u",
"outputId": "53c20c83-4778-4af3-cbe5-52986ed0fd0d"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"^C\n"
]
}
]
},
{
"cell_type": "code",
"source": [
"import csv\n",
"from pathlib import Path\n",
"from urllib.parse import urlparse\n",
"\n",
"import trafilatura\n",
"from tqdm import tqdm\n",
"from fastwarc.warc import ArchiveIterator\n",
"\n",
"output_folder = Path('/content/output')\n",
"output_folder.mkdir(exist_ok=True)\n",
"\n",
"count = 20\n",
"for record in ArchiveIterator(open('/content/CC-NEWS-20240101002957-01499.warc.gz', 'rb')):\n",
" if count == 0:\n",
" break\n",
" try:\n",
" with open(output_folder / f'{record.record_id}.txt', 'w') as f:\n",
" f.write(trafilatura.extract(record.reader.read()))\n",
" except:\n",
" print(f\"Error processing {record.record_id}\")\n",
" count -= 1\n",
" # parsed_url = urlparse(uri)\n",
" # csv_writer.writerow([parsed_url.netloc, record.record_id])"
],
"metadata": {
"id": "xmA5SndjXttU"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"import csv\n",
"from pathlib import Path\n",
"from urllib.parse import urlparse\n",
"\n",
"import trafilatura\n",
"from tqdm import tqdm\n",
"from fastwarc.warc import ArchiveIterator\n",
"\n",
"output_folder = Path('/content/output')\n",
"output_folder.mkdir(exist_ok=True)\n",
"\n",
"with open('urls.csv', 'w', newline='') as csvfile:\n",
" csv_writer = csv.writer(csvfile)\n",
" for record in ArchiveIterator(open('/content/CC-NEWS-20240101002957-01499.warc.gz', 'rb')):\n",
" uri = record.headers.get('WARC-Target-URI')\n",
" parsed_url = urlparse(uri)\n",
" csv_writer.writerow([parsed_url.netloc, record.record_id])"
],
"metadata": {
"id": "O6ZpjL_7rWv7"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"import sys\n",
"from pathlib import Path\n",
"from urllib.parse import urlparse\n",
"\n",
"# Use warcio imports\n",
"from warcio.archiveiterator import ArchiveIterator\n",
"from warcio.warcwriter import WARCWriter\n",
"\n",
"def split_warc_by_domain(input_warc_path, output_dir):\n",
" \"\"\"\n",
" Reads records from a single WARC file and splits them into multiple\n",
" gzipped WARC files, one for each unique domain name found in the URIs,\n",
" using the 'warcio' library.\n",
"\n",
" ***NOTE: This version is intentionally designed to fail (crash) immediately\n",
" upon encountering a malformed record or missing data, as requested.***\n",
" \"\"\"\n",
" input_warc_file = Path(input_warc_path)\n",
" output_folder = Path(output_dir)\n",
" # Create the output directory if it doesn't exist\n",
" output_folder.mkdir(exist_ok=True, parents=True)\n",
"\n",
" # Dictionary to store and manage open file handles and WARCWriter instances\n",
" domain_writers = {}\n",
" domain_file_handles = {}\n",
"\n",
" print(f\"Starting to process {input_warc_file.name}...\")\n",
"\n",
" # The outer try...finally block is kept to ensure file handles are always closed,\n",
" # but the inner logic is now designed to raise exceptions.\n",
" try:\n",
" # 1. Open the input WARC file\n",
" with open(input_warc_file, 'rb') as in_file:\n",
" # ArchiveIterator automatically handles the .gz decompression\n",
" iterator = ArchiveIterator(in_file)\n",
"\n",
" record_count = 0\n",
"\n",
" # 2. Iterate through every record in the input file\n",
" for record in iterator:\n",
" try:\n",
" # WARC-Target-URI is found in the record headers\n",
" uri = record.rec_headers.get_header('WARC-Target-URI')\n",
"\n",
" # INTENTIONALLY FAIL HERE: Raise an exception if URI is missing\n",
" if not uri:\n",
" raise ValueError(f\"Record {record_count + 1} is missing WARC-Target-URI and cannot be processed.\")\n",
"\n",
" # Extract the domain name (netloc) from the URI\n",
" parsed_url = urlparse(uri)\n",
" domain_name = parsed_url.netloc\n",
"\n",
" # INTENTIONALLY FAIL HERE: Raise an exception if a domain cannot be extracted\n",
" if not domain_name:\n",
" raise ValueError(f\"Record {record_count + 1} (URI: {uri}) resulted in an empty domain name.\")\n",
"\n",
" # 3. Check if a writer for this domain already exists\n",
" if domain_name not in domain_writers:\n",
" # Sanitize domain name for use as a filename\n",
" safe_domain_name = domain_name.replace(':', '_').replace('/', '_')\n",
"\n",
" # Define the output file path (using .warc.gz for compression)\n",
" output_warc_path = output_folder / f\"{safe_domain_name}.warc.gz\"\n",
"\n",
" # Open the file handle in binary write mode ('wb')\n",
" fh = open(output_warc_path, 'wb')\n",
" domain_file_handles[domain_name] = fh\n",
"\n",
" # Create a new WARCWriter instance\n",
" writer = WARCWriter(fh, gzip=True)\n",
" domain_writers[domain_name] = writer\n",
"\n",
" print(f\"\\n--- Discovered new domain: {domain_name}. Starting new file: {output_warc_path.name} ---\")\n",
"\n",
" # 4. Write the current record to the correct domain-specific WARC file\n",
" domain_writers[domain_name].write_record(record)\n",
"\n",
" record_count += 1\n",
" if record_count % 500 == 0:\n",
" # Simple progress update\n",
" print(f\"Processed {record_count} records across {len(domain_writers)} domains...\", end='\\r', flush=True)\n",
" except Exception as e:\n",
" print(e)\n",
" print(f\"\\nProcessing complete. Total records processed: {record_count}.\")\n",
" print(f\"WARC files generated for {len(domain_writers)} unique domains in {output_dir}\")\n",
"\n",
" except Exception as e:\n",
" # The script will now exit here on the first encountered error\n",
" print(f\"\\n--- FATAL ERROR: Processing halted ---\", file=sys.stderr)\n",
" # Re-raise the exception to stop execution immediately\n",
" raise e\n",
"\n",
" finally:\n",
" # 5. Crucial step: Close all open file handles\n",
" print(\"Finalizing and closing all output WARC files...\")\n",
" for fh in domain_file_handles.values():\n",
" fh.close()\n",
" print(\"All output WARC files have been finalized.\")\n"
],
"metadata": {
"id": "vp5qOZBZM_2A"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"# Define your input and output paths\n",
"INPUT_WARC_FILE = '/content/CC-NEWS-20240101002957-01499.warc.gz'\n",
"OUTPUT_DIRECTORY = '/content/output_by_domain'\n",
"\n",
"# Run the splitting function\n",
"split_warc_by_domain(INPUT_WARC_FILE, OUTPUT_DIRECTORY)"
],
"metadata": {
"id": "fifYke-0NLmd"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"!ls /content/output_by_domain | wc -l"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "jY_3VlNmQ4Ec",
"outputId": "efb78eda-0ed6-41ac-a625-bbc8e87349c4"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"1932\n"
]
}
]
},
{
"cell_type": "code",
"source": [
"urls = !cat /content/urls.csv | awk -F',' '{ print $1 }' | uniq"
],
"metadata": {
"id": "6MrGP7u3RLbb"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"import os\n",
"from pathlib import Path\n",
"\n",
"for url in urls:\n",
" if not Path(f'/content/output_by_domain/{url}.warc.gz').exists():\n",
" print(\"Url does not exist:\", url)"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "7mVvdMILTyzl",
"outputId": "beacf75f-e737-47c7-c8b2-98549fec85c8"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"Url does not exist: b''\n",
"Url does not exist: trikalaenimerosi.gr:443\n",
"Url does not exist: www.mynews13.com:443\n"
]
}
]
},
{
"cell_type": "code",
"source": [
"import glob\n",
"import pandas as pd\n",
"\n",
"df = pd.read_csv(\"/content/urls.csv\", names=['domain', 'id'])\n",
"id = df['id'].map(lambda x: x.replace('<urn:uuid:', '')).map(lambda x: x.replace('>', ''))\n",
"df['id'] = id\n",
"df.head()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 206
},
"id": "cU4BluwwB7t1",
"outputId": "c47e8da8-96cd-43df-a8fb-ad0b89bb2f3d"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
" domain id\n",
"0 b'' d0ac4900-11c3-4492-bb32-ef63ad6db57a\n",
"1 wise.com a1375556-2346-4981-80f6-c65be1932738\n",
"2 wise.com 39f425ab-e172-4ed1-a87d-9f1c97e2b896\n",
"3 bnnbreaking.com 65817f82-bc8c-4c18-8e8e-1a440cfef561\n",
"4 bnnbreaking.com d748085c-6750-4d2d-9b65-0e0514f93e68"
],
"text/html": [
"\n",
" <div id=\"df-e303ee49-17a9-43ff-a5ed-2e56f36dc8f3\" class=\"colab-df-container\">\n",
" <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>domain</th>\n",
" <th>id</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>b''</td>\n",
" <td>d0ac4900-11c3-4492-bb32-ef63ad6db57a</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>wise.com</td>\n",
" <td>a1375556-2346-4981-80f6-c65be1932738</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>wise.com</td>\n",
" <td>39f425ab-e172-4ed1-a87d-9f1c97e2b896</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>bnnbreaking.com</td>\n",
" <td>65817f82-bc8c-4c18-8e8e-1a440cfef561</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>bnnbreaking.com</td>\n",
" <td>d748085c-6750-4d2d-9b65-0e0514f93e68</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>\n",
" <div class=\"colab-df-buttons\">\n",
"\n",
" <div class=\"colab-df-container\">\n",
" <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-e303ee49-17a9-43ff-a5ed-2e56f36dc8f3')\"\n",
" title=\"Convert this dataframe to an interactive table.\"\n",
" style=\"display:none;\">\n",
"\n",
" <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n",
" <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n",
" </svg>\n",
" </button>\n",
"\n",
" <style>\n",
" .colab-df-container {\n",
" display:flex;\n",
" gap: 12px;\n",
" }\n",
"\n",
" .colab-df-convert {\n",
" background-color: #E8F0FE;\n",
" border: none;\n",
" border-radius: 50%;\n",
" cursor: pointer;\n",
" display: none;\n",
" fill: #1967D2;\n",
" height: 32px;\n",
" padding: 0 0 0 0;\n",
" width: 32px;\n",
" }\n",
"\n",
" .colab-df-convert:hover {\n",
" background-color: #E2EBFA;\n",
" box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
" fill: #174EA6;\n",
" }\n",
"\n",
" .colab-df-buttons div {\n",
" margin-bottom: 4px;\n",
" }\n",
"\n",
" [theme=dark] .colab-df-convert {\n",
" background-color: #3B4455;\n",
" fill: #D2E3FC;\n",
" }\n",
"\n",
" [theme=dark] .colab-df-convert:hover {\n",
" background-color: #434B5C;\n",
" box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n",
" filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n",
" fill: #FFFFFF;\n",
" }\n",
" </style>\n",
"\n",
" <script>\n",
" const buttonEl =\n",
" document.querySelector('#df-e303ee49-17a9-43ff-a5ed-2e56f36dc8f3 button.colab-df-convert');\n",
" buttonEl.style.display =\n",
" google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
"\n",
" async function convertToInteractive(key) {\n",
" const element = document.querySelector('#df-e303ee49-17a9-43ff-a5ed-2e56f36dc8f3');\n",
" const dataTable =\n",
" await google.colab.kernel.invokeFunction('convertToInteractive',\n",
" [key], {});\n",
" if (!dataTable) return;\n",
"\n",
" const docLinkHtml = 'Like what you see? Visit the ' +\n",
" '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n",
" + ' to learn more about interactive tables.';\n",
" element.innerHTML = '';\n",
" dataTable['output_type'] = 'display_data';\n",
" await google.colab.output.renderOutput(dataTable, element);\n",
" const docLink = document.createElement('div');\n",
" docLink.innerHTML = docLinkHtml;\n",
" element.appendChild(docLink);\n",
" }\n",
" </script>\n",
" </div>\n",
"\n",
"\n",
" <div id=\"df-8e9a52e3-7baa-4e91-a7c8-632189193839\">\n",
" <button class=\"colab-df-quickchart\" onclick=\"quickchart('df-8e9a52e3-7baa-4e91-a7c8-632189193839')\"\n",
" title=\"Suggest charts\"\n",
" style=\"display:none;\">\n",
"\n",
"<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n",
" width=\"24px\">\n",
" <g>\n",
" <path d=\"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z\"/>\n",
" </g>\n",
"</svg>\n",
" </button>\n",
"\n",
"<style>\n",
" .colab-df-quickchart {\n",
" --bg-color: #E8F0FE;\n",
" --fill-color: #1967D2;\n",
" --hover-bg-color: #E2EBFA;\n",
" --hover-fill-color: #174EA6;\n",
" --disabled-fill-color: #AAA;\n",
" --disabled-bg-color: #DDD;\n",
" }\n",
"\n",
" [theme=dark] .colab-df-quickchart {\n",
" --bg-color: #3B4455;\n",
" --fill-color: #D2E3FC;\n",
" --hover-bg-color: #434B5C;\n",
" --hover-fill-color: #FFFFFF;\n",
" --disabled-bg-color: #3B4455;\n",
" --disabled-fill-color: #666;\n",
" }\n",
"\n",
" .colab-df-quickchart {\n",
" background-color: var(--bg-color);\n",
" border: none;\n",
" border-radius: 50%;\n",
" cursor: pointer;\n",
" display: none;\n",
" fill: var(--fill-color);\n",
" height: 32px;\n",
" padding: 0;\n",
" width: 32px;\n",
" }\n",
"\n",
" .colab-df-quickchart:hover {\n",
" background-color: var(--hover-bg-color);\n",
" box-shadow: 0 1px 2px rgba(60, 64, 67, 0.3), 0 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
" fill: var(--button-hover-fill-color);\n",
" }\n",
"\n",
" .colab-df-quickchart-complete:disabled,\n",
" .colab-df-quickchart-complete:disabled:hover {\n",
" background-color: var(--disabled-bg-color);\n",
" fill: var(--disabled-fill-color);\n",
" box-shadow: none;\n",
" }\n",
"\n",
" .colab-df-spinner {\n",
" border: 2px solid var(--fill-color);\n",
" border-color: transparent;\n",
" border-bottom-color: var(--fill-color);\n",
" animation:\n",
" spin 1s steps(1) infinite;\n",
" }\n",
"\n",
" @keyframes spin {\n",
" 0% {\n",
" border-color: transparent;\n",
" border-bottom-color: var(--fill-color);\n",
" border-left-color: var(--fill-color);\n",
" }\n",
" 20% {\n",
" border-color: transparent;\n",
" border-left-color: var(--fill-color);\n",
" border-top-color: var(--fill-color);\n",
" }\n",
" 30% {\n",
" border-color: transparent;\n",
" border-left-color: var(--fill-color);\n",
" border-top-color: var(--fill-color);\n",
" border-right-color: var(--fill-color);\n",
" }\n",
" 40% {\n",
" border-color: transparent;\n",
" border-right-color: var(--fill-color);\n",
" border-top-color: var(--fill-color);\n",
" }\n",
" 60% {\n",
" border-color: transparent;\n",
" border-right-color: var(--fill-color);\n",
" }\n",
" 80% {\n",
" border-color: transparent;\n",
" border-right-color: var(--fill-color);\n",
" border-bottom-color: var(--fill-color);\n",
" }\n",
" 90% {\n",
" border-color: transparent;\n",
" border-bottom-color: var(--fill-color);\n",
" }\n",
" }\n",
"</style>\n",
"\n",
" <script>\n",
" async function quickchart(key) {\n",
" const quickchartButtonEl =\n",
" document.querySelector('#' + key + ' button');\n",
" quickchartButtonEl.disabled = true; // To prevent multiple clicks.\n",
" quickchartButtonEl.classList.add('colab-df-spinner');\n",
" try {\n",
" const charts = await google.colab.kernel.invokeFunction(\n",
" 'suggestCharts', [key], {});\n",
" } catch (error) {\n",
" console.error('Error during call to suggestCharts:', error);\n",
" }\n",
" quickchartButtonEl.classList.remove('colab-df-spinner');\n",
" quickchartButtonEl.classList.add('colab-df-quickchart-complete');\n",
" }\n",
" (() => {\n",
" let quickchartButtonEl =\n",
" document.querySelector('#df-8e9a52e3-7baa-4e91-a7c8-632189193839 button');\n",
" quickchartButtonEl.style.display =\n",
" google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
" })();\n",
" </script>\n",
" </div>\n",
"\n",
" </div>\n",
" </div>\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"variable_name": "df",
"summary": "{\n \"name\": \"df\",\n \"rows\": 40583,\n \"fields\": [\n {\n \"column\": \"domain\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 1933,\n \"samples\": [\n \"kyivindependent.com\",\n \"www.gazzetta.gr\",\n \"chitralekha.com\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"id\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 40583,\n \"samples\": [\n \"93f87948-9b9b-4dc0-8049-aa0f8cf94cb3\",\n \"f56fcebb-080d-4851-b546-fbc989ac39f7\",\n \"f4fa0e16-7fc3-4741-bdf3-142ffd4e53c0\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 89
}
]
},
{
"cell_type": "code",
"source": [
"df.shape"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "qSgnp-ieHcdV",
"outputId": "1e57b216-17b9-44f3-e2e6-c35e63890438"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"(40583, 2)"
]
},
"metadata": {},
"execution_count": 90
}
]
},
{
"cell_type": "code",
"source": [
"import matplotlib.pyplot as plt\n",
"\n",
"domain_counts = df.pivot_table(index='domain', aggfunc='size').sort_values(ascending=False)\n",
"\n",
"# Take top N domains for better visualization, e.g., top 10\n",
"top_domains = domain_counts.head(20)\n",
"\n",
"plt.figure(figsize=(12, 6))\n",
"top_domains.plot(kind='bar')\n",
"plt.title('Top 10 Most Frequent Domains')\n",
"plt.xlabel('Domain')\n",
"plt.ylabel('Count')\n",
"plt.xticks(rotation=45, ha='right')\n",
"plt.tight_layout()\n",
"plt.show()"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 600
},
"id": "BJGed13lCRCr",
"outputId": "5b510f34-b596-4698-e165-cc4af4451bce"
},
"execution_count": null,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": [
"<Figure size 1200x600 with 1 Axes>"
],
"image/png": "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tHfv3okdyr8Sd10cOXJEy5Qpo4cOHdJ169bpBx98oIUKFdKZM2cmWN7exY31999/16CgIOP1smXLtFatWlq/fn2HT0RNmDBBs2TJou+99576+fmpl5eXsd85opiYGH38+LHWq1dPhw8frqqxP7Lkz59fu3btGq+sI9q4caOmTJlSa9WqpaVLl9bcuXPr4sWLEzusV/b89cV3332nX375parGrpsffvhBK1eurPXr13e4RNTNmze1RYsWWr16dZ09e7aqqt65c0cLFChgXHdERUUZiQFH3RZv376tPj4+WqVKFc2YMaNxU+wo6+nvnDlzRitUqKA5cuTQadOmqarj1uv+/fvG/7du3aqqsYlsFxcXDQwMdPjE6JMnT/TJkydav359bdSokaZKlUoXLFigT58+VVXb/ctR9rXnt7VOnTrpjh07VFX13r17mj9/fi1Xrpz++eefiRDdf5fQeggLC9PZs2drgQIFHCoRRRIqkT2/gezfv98mux4SEqJ58+bV8uXLO1Tm1rqTnDlzRi9evKhBQUG6fPlyY/7Jkye1Xbt2WrlyZZtf/R3R9evX9eLFi+rt7a1ly5aNl4iyHsztnXWdHTlyRNevX69BQUH6zTff2JQZPXq0WiwWnTZtmoaGhiZGmP/K8/vZ1q1bjYt21djt0cPDQxs0aOCwiajHjx/rW2+9ZdwIP3z4ULNnz65z585N5Mj+u4sXL8abtnjxYnVzc9M+ffq8+YD+g7jbYnR0tP7+++/asWNHY//766+/tFevXurt7a1fffVVYoX5r1jrsGPHDv388891wIAB+sEHH9iUWbZsmfr7+2ujRo107969iRHmv/L8MWT48OG6ZcsWVY39dbxv376aJk0ah0lEjRkzRseMGWMzLSwsTIsUKaJHjhzR+/fvq5eXl00Cat68eRoeHv6mQ31tJk+ebOxTJ06c0I8++kjd3d110aJFiRzZy4t7A/LNN9/o+PHjtXHjxsbNvmpskubHH3/UKlWqaMOGDfXevXuJEeorsyaWbt++rc2bN9cqVaro3Llz9c8//9RKlSrp48eP473HUW+MVVUjIyP10aNHWrduXc2QIYMePXrUZv6NGzfeVHj/mXU9WK93+/fvrxkyZNB69erp3bt3bco4ih07dmipUqX05s2b2qdPH82dO7fevHlTVVXXrVunFotFe/Toobdu3UrkSF9N3G3x+Sc3OnbsqClTprRJRKmqXrt27Y3F91/Erdsff/yhv/32m77//vs2TxSFhYVp/vz5tXz58g7bwGP37t06YMAAm2lhYWH6zTffaO7cubVbt27GdHtORJGESkRxD8hTp07VLl26aOHChfXDDz+0KRcSEqL58uXTSpUqOdSvx4sXL9aMGTNqxowZNXXq1PrZZ5/ZzD916pR26tRJixQpoj/88EMiRflqrOvs6NGjumrVKl2xYoX+9ddfqhp7UVu4cGGbFlHTpk3Tzz77zK4PAnEtX75cXV1dtWjRomqxWLRZs2bxfun5/PPP1WKx6MyZMx3ioiJujLNmzdI+ffpo2bJlddiwYTblTp48qWnTptXGjRvrmTNn3nSYL81an7j12r17t166dMlIDFq3t6pVq9ok2wYNGuRwiY3r16+rxWLR0aNHx5v3/fffq8Vi0ZEjRyZCZP/NqFGjtGbNmlqnTh1t0KCBzbyzZ89q7969tUiRIjphwoREivDfWblypbq6umrJkiU1ffr06u7urvv377cp88svv2j58uX1nXfecYgkfdzj98aNG3XLli1atWpVm0fwrl69qn379lV3d3f9/vvvEyPMV2L9QeGLL76wmd6wYUPt3r275sqVS7t3764RERGqqvrgwQMNCAiI98OEPYv7Y9ipU6e0RYsWNtcaly5d0o8++kjTpEmjS5YsSawwX1rc7bB///7q4eGhpUqV0ixZsqi3t7dNkubZs2e6YMECLVCggPbt2zcxwn0lz19L3Lx5U5s3b67+/v7auXNndXJy0rZt22qrVq20S5cu+v7772ujRo10wYIFiRTxy4u73n788UcdMmSIDhw4UNetW6eqsftWgwYNNFOmTHrw4EF9+vSptmzZUvv165dYIb8S67pbs2aNtmnTxpg+bNgwLVKkiH722Wd6584dm7KOYMOGDRoYGKg5cuTQdOnSGdfC1scmV69erRaLRYOCghwmERV3W5w9e7a+++672r59e5vHJrt06aJp0qTRefPm6cWLF7VBgwYaGBiYGOG+krjb1scff6xZsmTRDBkyqMVi0W+//dam7g8fPlRvb2/NmTOncQ9n76z1u3btmg4bNkxz5cqlQ4YMsSkTHh6u3bp1U4vFou3atUuMMF8JSahEEndnmTBhgiZPnlw7duyomTNn1jx58ujq1attdpjQ0FBNlSqVdunS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LVeunMMdH3/77TetX7++fv311zYJKNXYJ1nat2/vEAP0JNQ/6s2bN7VVq1ZaoECBeD8OWUfZ7N69+xuN83Wwns+8vLxsfnBWjW3RvGvXLu3YsaN+9NFHDvMEjipJqDfmRQep69eva9OmTbVy5crxbpBv3rypXbt2teuLCetOEBoaanMx9PDhQx0zZoymTp06wT4YHKUTv+etWLFCXVxcNG3atPE6kH///fe1devWdj96kHWdXblyRc+fP2/TCffMmTO1dOnS2q1bt3idcztCcu1F+9nRo0fVz89P/f39dcWKFTbzDh48qK1atbL7C4m4J9oDBw5ou3bttFixYjplyhT18fHRAQMG6KxZs3T69On65Zdf6vjx43Xfvn0O0fHz8wYNGqQuLi7asmVLmxtIq+vXr+tff/1l17+qvmh7ioqK0i+++EKdnJzi9Sl048YNnTdvnt23yrBuiydOnNCdO3fqmjVrjPqeP39emzZtqpkzZ473+F1CjwnZmxett2+++UYtFouOHTvWpsyjR4+0f//+WqVKFYe5Of7111/V29vbGOnJasiQIZosWTL95ptvHKol74vMnDlTLRZLvNYzDx8+1N69e2v69OntdpTXuNvYjh07dMWKFfrbb78ZSdAzZ85o8eLFtVixYjbXXn838pU9+v7777VBgwbx+hpbvny5li9fXmvVqmW0PLl3757dP578ouPH3r171WKxqMVisbnWf/TokQYEBOj7779vt3VKSNxEVPHixbV+/fqaO3dutVgsWrVqVS1YsKDmz59fS5curdWrVzcG67FH//S9x52/bds2ffvttzVHjhzq7+9vHCftcd393fVwoUKF1GKx6Oeff25Mf/z4sdatW1fbtm1rl/WJK27dbty4oaGhocY9yrVr17Rp06ZavXr1eKNDh4SEOMRxMSFff/21WiwWHTdu3AvXj6PVjSTUGxB3Z1m+fLlOnjxZZ82aZbS8uHbtmjZu3FirVasWLxFlZY8blnUnWLlypfr4+GjhwoW1RIkS+v333+uDBw/0yZMnOmbMGHV3d7c50DkCa90OHz6sGzdutBlKfMCAAerk5KSrVq3Se/fu6a1bt7R///6aMWNGu39kwVqvZcuWadGiRdXLy0sLFiyob7/9tjFv+vTpWrp0aQ0KCrJ5TNSRTkrr1q3TefPm6U8//WQkPP/880996623NCAgQFeuXPmPn2GPnk9EdejQQbNmzaoWi0VbtWql5cuX13LlymnlypW1XLlydr89Pi/ucW7IkCHq5eWl48ePt/kF1d7XkaptjHPnztVPP/1Uu3Tpojt27DBuIq2dQo8bNy7Bz7DXRJR1G1yyZIlmyZJFCxUqpM7OzlqlShVdtmyZxsTE6Llz57R58+aaLVu2BB8zsVdx19vFixf1yJEjGhkZaawL6zqbMGGCTdknT54k+Kusvdq2bZtaLBbj+GDd706dOqWpU6c2Rj91FHF/EbYm1qzTxo4dq05OTjajhKrGtmKz5yS2lbUza29vb3V2dtaGDRsaj8ucOXNGS5UqpSVLlnSYR5KfZ/0RpV27dvFa83766afq4uKipUqVsmmdba/ngLj7/vfff6+jR4/WuXPnGtcg33zzjbq4uOiYMWN0z549unv3bq1du7aWLFnSOMY4wvHDynrcOHv2rJYpU0bz5s2rQUFBun37dl21apUuWLBAN2zYYNf9Ncbdlp7vQ8c67/nt7fHjx3rx4kVjuj2eq+NuRzNmzNA+ffpo7969jYT1mjVr1NnZWbt06aLz58/XVatWqZ+fn5YoUcLut8W4cQ0fPlzLly+vBQoU0AoVKhh9bV6/fl2bNGmi1atXT/C+2h7vqV/GhAkT1MnJSadPn24z3V7X1T8hCfUGffzxx5o1a1YtW7asFi9eXF1cXPTHH39U1dhWKY0bN9aaNWs61MXfhg0b1NXVVYcPH64LFizQDh06aIECBXTIkCEaGhqqoaGhOn78eLVYLA71uIJqbJ9dGTNmVE9PTy1cuLC+++67qhp7wunUqZO6urpq3rx5jT4YHOWxoF9//VWTJ0+uM2fO1A0bNuhPP/2k2bNn1+rVqxtlZsyYYfQD5Wi/iH/88ceaPXt2LViwoBYoUEDTp09vdPx/6NAh9fPz03r16jnsI09xTza///67vvfee1q0aFGjXwYrR2wBpWp7wTdgwADNmTOnTpw40SGb8n/yySeaIUMGbdmypRYrVkzz58+vPXv2NG6Uv/jiC3V1dbXpVNIRHDhwQNOlS6dz587VK1eu6LVr1zQgIECrVq1qtDQ8fvy41qlTRwsWLGiTpLFXceMbNGiQFi5cWFOmTKllypTRPn36GBfvU6dO1WTJkumkSZPi3ZzYex2tIiIitF69ehoQEGAz2ubt27e1U6dOOmHCBIcY/VT1/77zFStWqI+Pj2bPnl19fX115MiRxkhxY8aMUScnJ4e6tlKNTWBnzpxZd+/ereHh4bp7925t0KCB1qpVSzdv3qyqsR3mZ8uWzSGG436R2bNna9WqVbV169Y2IyXPnz9f69Spo8OHD7fbxJNV3H3/k08+0UyZMmnJkiW1SJEi6uvra/RH+cUXXxjXlWXKlNG6desa11iOeGNsjfnChQtaokQJrVu3rsN1IaIam6yuUaOGvvPOO7po0SJjurV+Dx480K1bt8Z7nz1ul3FjGjhwoKZPn14DAwM1X758mjVrVqN7hiVLlqi/v79myJBBq1Wrps2bN3eobXHYsGGaPn16Xbhwoc6YMUM7d+6syZIlM1o/Xb16VZs1a6aFCxeO10+lPfun64jx48c75PksISSh3pBly5ZphgwZ9Pfff9eIiAi9deuWMSqNtYPaq1evavXq1fWDDz6w+4vZmJgYjYyM1LffftsYDcNq1KhRmjdvXl28eLGqxmakp06d6hAdpVm/93v37qm/v79+9913eubMGf3yyy+1ePHi2rx5c6Pshg0bdMGCBbpu3TqHGjlu8ODBNvVQje2Hx8vLy+ZCdu7cuQ7Xf8uPP/6o6dOn1wMHDuiDBw/0woUL2q5dO02TJo0xMtwff/yhJUuWtOlA09HEPT7s379f27ZtqyVKlNCffvopwTKOJu4F0IABAzRfvnw6YsQIhxlZRzV25MwcOXLYdMQ9fvx4rVatmg4YMECfPn2qT5480XHjxmnVqlUdan3NnTtXS5UqpeHh4cYFr/WYWaNGDaPcqVOnHOrYqBq7jjJkyKArVqzQ33//Xfv376+VK1fWVq1aGY9uTZ8+XS0Wiy5cuDCRo/33Fi9erP7+/urn56cHDx7Uv/76SwcNGqQlSpSw60dnErJx40Z1c3PTESNG6OLFi7Vz585aoUIFbd++vfEI6IQJE9Risdh9P1BxBQUFabNmzWymHThwQH18fIwBUWJiYvTixYsOcdP4vLg3y7NmzdJq1appixYt9OjRoxoWFqbNmjXTSZMmGcdGR6jjhQsXtHXr1kYrytWrV6uvr6+WK1fOOBZeuHBBjx8/rufOnTPqZo+taV7W8y2iKlSooLt27UrkqF7ezJkzNVOmTDpq1Cj18fHRKlWq6NChQ435T58+1ZEjR6qnp6du2rQp8QJ9RQ8ePNCuXbsa1743btzQunXrapYsWfTIkSOqGtuVyo0bN/TBgwcOtS3ev39ffXx8dM6cOca06Ohoo29DayL06tWrOmjQILs/dpw4cUK/+OIL4/U/XQ9OnDjR4c5nCSEJ9YZMmzZNfX19VdV24+rZs6fmzJnTODnduXPH7p95j6tevXras2dPVbVtefHOO+9oxYoVjdf2+GvBi+zdu1dbtGih77zzjvGM8ZMnT/THH3/UIkWKaJMmTRI5wv+mVatW6uPjY7y2nnBmz56tJUqUMDq9c0QjR47URo0a2Ux7+vSpNmnSREuUKGE0tz579qxDbZNWcY8JcU+qBw4c0CZNmmilSpXsvk8y1ZfrgyFumR49emjx4sUdol8yq6VLl2quXLnijSg5ZMgQzZs3r9GyJjIy0qEe5VKNPZ8VLFjQ2AafPHmiqqp//fWXOjs72wzb7ShiYmI0LCxM69SpY9M5d1RUlM6ZM0fLlClj04Hr0qVL7fpi3botPT9KWtxtbNmyZdqwYUO1WCxaoEABzZIli8O06FWNrUtERIS2a9fOpo/GqKgonTVrlpYrV85mXX7xxRd228IrofPRRx99pHXq1DHmW9fdt99+qylTpozXp5e932gl5PlHl/39/TVZsmRatGhRLVy4sN0/GhSX9RrRz8/Ppq+xTZs2GYmoK1euxHufPV+LWL/3x48fx+vTLzo62tjmrHU4deqUVqlSJcGBUuzF89/3yJEjjdZPoaGh+sknn2jFihV1yJAhRplt27Y5RDLDas6cOZoyZUqtVKmSnjt3zph+9+5drVevnnp6eiY4YI297mfPx3X16lX18PDQBQsWGPNjYmL00aNH6u/vr3369In3FIc9rruYmBgNDw/XzJkzq8VisUl+vuh632ratGl2ez57WU6C1y4mJibeNCcnJzl8+LCEhISIxWKR6OhoERFp2LChPHv2TB4+fCgiIhkzZhQnJyeJiYkRi8XyRuP+J6oqIiJ37twxpmXJkkV+/fVXERFxc3OTyMhIERGpXLmyWCwW47WTk2Nsas+ePZOdO3fK/v375eDBg5I+fXoREUmePLk0bdpUBg0aJBcvXpRatWolcqQvx7rOrl69Kjdv3hQRkRYtWsidO3fkl19+ERERZ2dnERFJly6dhIeHi4uLS+IE+4oS2s8eP34sf/zxh/E6Ojpa3NzcpE2bNvLw4UO5f/++iIjkz59fnJycjP3Q3ljX29GjR2XNmjVy5swZefr0qVgsFomJiRFVlWTJkhnly5UrJ4MGDZJly5ZJqlSpEivsl6KqYrFY5LfffpNp06bJtGnT5NGjR8Z867HPYrEYx5rp06fLli1bjP3R3rzomB8dHS1PnjwREZGoqCgREenbt68EBwfL1q1bRUTExcVFLBaL8b3YG+u2ePjwYTl//ryIiNSqVUsuXbok48ePF5HY46NIbB3z5csnadOmTZRYX1Xc9WaxWCR16tQSHh4uV69eNaY7OztL586dJWvWrLJu3TpjerNmzcTZ2VmePXv2RmP+J9b1ZbFYZN26dTJt2jTR2B8cjenWmJs2bSorV66Uffv2yU8//SR//PGHlC5dOtFif1UWi0VcXV3lwYMHNtclzs7O0rVrVylQoIBs3rzZmN6zZ08pXLhwYoT6t2JiYoxrpM2bNxt1qVy5smzcuFHWrFkjTk5OxvEhY8aMUqRIEXFzc7P5nLjnBHuR0LEx7vS45+FOnTrJV199JQsXLpR+/frJsWPHxNnZWaKjo+3y2BiXqsrjx48lderUcvLkSZvrqFq1asmnn34qadOmlSpVqthsqyL2e31sPSetXbtW2rRpI+XLl5cePXrITz/9JCKxcVu3uePHj0t4eLgUKlRItm3bJjlz5kzM0F9IVY3ve/ny5bJ8+XI5efKkcc5yd3eXQYMGSbVq1WTTpk0ydOhQUVXx9fWV0aNHS7Jkyez2ujGuihUrSuXKleXo0aPG8T4mJkYyZMgg33//vZQrV05KliwpFy5csHmfPe5nce+Hr127JiIi2bNnFz8/P/n555/l9u3bxvyUKVNKqlSp5MGDB/HuZezx+GixWCRVqlTi5+cn3bp1k4kTJ0r//v2NeVbW2BcuXGgcOz/88EO7PJ+9Cvs88jmwuBcTK1eulI0bN4qIyFtvvSUFChSQESNGyK1bt4wNytPTU9KkSWPcqFjZ20nJejJas2aNNGrUyEhgDBs2TB4/fiz16tUTERFXV1cRiT0hpU2b9oUXIPbKesPx0UcfyYMHD6R79+7GvBQpUkjTpk0lKChIHj16ZBwM7ZV1na1YsULeeecdWbZsmTx8+FCKFi0qRYsWle+++06WLVsmIrHJt4MHD0rmzJnjXdjao7j72caNG2X37t0iItKoUSNJnz69jBw5Uh49emSzn8VNklrZ40lJJPbks3z5cvH19ZUuXbpI48aNZfjw4XL//n2bm5EJEybI4MGDRSQ2EeXl5ZWYYb8Ui8Uiq1evFl9fX1m2bJl8/PHH4u/vL7/99pvNeu3Tp4/07NnTuEjKnDlzYob9QnFj/uabb2Tx4sUiErstpkyZUrp37y6RkZHGBdHt27clV65c8epjjxd/1mPI8uXLpUGDBjJhwgS5f/++FC5cWCZNmiQjRoyQUaNGSWhoqNy/f19+/vlniYyMtNt1FVfc9Xb27Fl5+vSpqKrky5dPDh06JDdu3DASNyKxCYGIiIh4xxBrEj+xrVixQs6dO2fzI9dXX30lImIkda2ej7lChQpStmxZhzh+WNfJvXv3JCoqylhnV69elRs3bhjXHBaLRXx9feX69esSGhqamCH/rbg3xYMGDZKuXbvKkiVLJCIiQlq0aCE9e/aUd955R3766Sc5e/as3LlzR2bOnCkZM2a0+2Rv3H1s/fr1snDhQvnhhx/k6dOnxvSYmBhJliyZPH36VERifyBq0aKFtG/f3rjht9fzdFwWi0Xeffdd6dOnj3h4eEjTpk0lJCTEmO/v7y+9evWSxo0b2+2PKc+zXvM3bdpUChUqJIGBgXL79m0ZMGCATJ482Sg3a9YsKVOmjPz666+iqnZzTHxe3B96+vTpI++++6706NFDli5dKnPmzDHKpUuXTgYNGiQ1atSQH3/80WaeiP1eN8ZVrFgx+eKLL6RYsWLSuHFj49pRVSVDhgwyd+5c6dOnj+TKlSuxQ/1bcY8hI0eOlIEDB8qGDRtERKROnTpy9+5dmTx5soSGhorFYpGIiAgJCQkRT0/PxAz7pVnPZ1FRUZIzZ0759ttvZfLkycZ1/dKlS+XGjRsiInLs2DFp27atBAUFJVq8r92banL1vyBu07m+fftq7ty5ddasWUY/JqNGjdLKlStr+/bt9dChQ/rHH39o3bp1tVq1anbdHNdqxYoVmiJFCp0wYYIxWlx0dLRu2LBB8+bNq97e3tqmTRtt3ry5pk6d2njm2J4938Qz7ig7EyZM0GLFitk081eNffTEXod1ft7atWs1efLkOnXqVJvH7Pbt26dNmjTR3Llza/HixdXPz0/Tpk3rEI9iPL+fFShQQGfNmqUhISH69OlT7dOnj1arVk179+6tV69e1dOnT2vdunXVz8/PIfaz6OhoDQsL07p16+p3332nN27c0M8++0wrV66s7733nvFI2p07d4xHKx2hryTrenvw4IG+8847OnfuXI2JidGQkBAtXbq0li9fXrdv326so59++knTpUunN27cSMywX1rfvn01W7ZsOnr0aA0ODlZV1SNHjmjOnDnVx8dHf/rpJ127dq3Wq1dPy5UrZ5dNwxOyZcsWTZEihc6dO9dmXTx48EBnzpypKVOm1Ny5c2vhwoU1a9asRv8T9izucWDw4MFaqVIlo6+P69eva+bMmbVhw4b6119/GX13VatWTTt37pxYIf+tw4cPG30WWvvxi46O1sqVK9v0MxFXv379tG3btm8yzP/MegxZtWqV1qhRwxgJ6fLly5o+fXpt2bKlzXmua9euGhAQYDwuas/GjRunGTNm1L1799o8dvz48WMdMGCApkqVSr28vLRQoUJapkwZ41ETRzinffzxx5otWzYtWLCgZs+eXXPnzq27du0y1mdYWJj26NFD582bl7iBvoQXfd9x+6368ccf1cfHR+vXr288dv08Rzj+P3z4UAMDA20eS7ty5YqOHj1ac+XKpcuWLTOmN2vWTM+cOZMYYb6yW7duaWBgoP7555964cIF/fzzz7Vw4cLx+re9d++ezpgxwyHW1YucOnVKy5Ytq4ULFzaOK89vw45Qv4EDBxp9NcbtZ3LkyJFaoUIF9fb21vbt22uFChW0SJEidv2ofFzW737atGk6ZswYVY19rNfFxUULFiyoJUqUMB67fvbsma5atcoh+ld+WSShTDB9+nTNnDmz7tmzJ96OMHnyZK1Zs6ZaLBYtXry4Vq5c2SEuJu7cuaMVKlTQsWPHxpsXExOjN27c0KCgIG3Xrp127drVoYaG//nnn20ufqwXE/fv3zcSUb17906k6P6dmJgYDQ0N1Tp16uiwYcNs5sUdzWTLli3as2dPnTJlisNcQFhNmTJFM2fOrL/99ptNvyePHz/WwYMHa9myZdVisWixYsW0QoUKdr+fWbe78PBwffr0qb799tt66dIlY/6ECRPUx8dH33vvPSPpdOHCBYdJ0qjGjszo6+urAQEBeuzYMWN6WFiYlilTRsuVK6fbt2831pWjdJA8b948zZQpkx46dCheYvvSpUvq6+urBQsW1EKFCmmdOnUcZgSamJgY/fDDD41OkK37Tty4z507pz/++KMuX77cZnt1BEOGDNHMmTPrqlWrbPrXOXXqlGbLlk2LFy+uJUqU0EqVKmnRokWN9WaP/WbMnj1ba9asqS1bttTz58+rqqq/v7/R14m1z0ZrP0pz585VT0/PeP0K2btVq1ZpihQpdMyYMTb9Yfzxxx+aIUMGrVSpktapU0dbtmypadKk0cOHDyditC/n8ePHWrdu3XgjCD8/EuqGDRt09erVxv7nCDda33//vWbIkEH//PNPvX37tt65c0fr169vM0rXsWPHtEqVKtqxY8dEjvaf/d359vlEVOXKlbVRo0Z6//79NxXeaxUeHq7e3t46ePBgm+lXrlzRwMBA7d+/fyJF9u9Nnz5dixcvrk2aNDGuL0JCQnTy5MlavHjxeIkoK3s/V/+dU6dOably5bRYsWIOOcrwvn37tGDBgsYo16q21/FbtmzRgQMHavv27XXQoEHGcdGR1tnSpUttBnWpUqWKJkuWTNu3b594Qb0BJKFeo5iYGI2OjtbmzZvrgAEDbOY930Ha/v379fTp08aOZO8XExcuXNBs2bLptm3bVDV+x8Fx2etNflzW2M+ePavJkiXTL7/8MsH59+/f10mTJqmXl5fDnXAjIiK0SJEiL/wl3JE6eY4rJiZGnzx5ovXq1TN+ObCKe3P/9OlT3bhxox48eNBh9rOVK1dquXLltFq1alq4cOF4F68TJ07UatWq6TvvvOOQFxPXr1/XjBkzqsViMVoxWPe1hw8fasWKFTV//vy6c+dOm3n2rl+/fkYrGes29vxx8Nq1a3r16lWHGoEmOjpaq1atatNiJu46uXXrVmKE9VpcuHBBixUrpkuXLrWZbl0v9+/f12+++UaHDh2qU6dONabb23qLe6E9Z84c4/hw/vx5bdGihbGfxWVNSDlKi16ru3fvaoUKFXT06NE2063r5Nq1azpkyBCjo3JH6bT19u3bmj59epuO760eP36cYEtXR7nBGjlypDZo0EBVbY+JNWvW1EqVKhmvjx8/bvfXjl9++aWmTJnyb1sex03U//jjj5o/f37t16/fmwrxP4l7LrZeS7Vr1047duyot2/ftinbtWtXrVatmt0dD/9OVFSUzps3TwsWLKj58+e3mRcSEqJTpkzRUqVKaevWrRMpwpf3omujuNPj/v/UqVOaM2dOh6jb87Zs2aLZs2fXv/7662/Lxa2vvW6X1nOvNQH67Nkzffbsme7atctIQnXp0kWzZs2qw4cP11SpUhmDfyVF9vngroOy9sVw7do18fb2FhExnmd3cXGRp0+fyp9//ik+Pj5SoUIF430xMTF2+wy1laurq6RIkULOnz8vvr6+RgfJFotFNm3aJA8fPpRmzZqJiH32bfI8a8fIly5dkgEDBtg8Yxv3GeR06dJJmzZtxMXFRQIDAxMr3H8lPDxcoqKi5MGDByIS2++TdTs7d+6crFmzRtq0aSOZMmVKzDBfmXX7unr1qlGfuPvZkydP5PTp01K6dGmpXbu28b7o6Gi73M/0//dTcOzYMXnnnXekT58+cunSJblw4YK0aNFCFi9eLOnSpRMRkY8//liePHkiu3btMjq6diReXl5y7NgxKVu2rIwePVpy585tdKyYOnVq2bx5szRs2FCyZ88uIo5xLBEROX36tISHh4tIbH871mNIZGSkHDlyRMqXLy/ZsmUzyjvCMV8ktm/CsmXLytmzZ+Xq1auSI0cOoxP1S5cuyfDhw2XYsGGSO3fuxA71lYWGhsrNmzelWLFiIvJ/+6Gzs7M8efJE0qRJI126dLF5jz0eQ+L2H9m5c2dxcnKS+fPnS+/evWXr1q1y9uxZmTBhgtGJ8NOnTyVHjhzy7bffiru7eyJG/uoiIyPlzp07UrFiRRH5vw5rrftctmzZZPjw4SIiDtOXkIhIpkyZpGrVqvLbb79JkyZNJHPmzMb2eODAAVmxYoWMGDFCUqdObbzHHusW99rJ6tatW3LmzBkRid1WIyIixM3NTT755BPp0aOHnDt3TvLnzy9FixZ94WfYg6+//lo++eQT+e677yRDhgzx5uv/7/zfetx3dXWVFi1aSIYMGRxiIBvr9rZu3TpZtmyZdOrUSapWrSpvvfWWfPzxx1KyZElp3bq10d9fZGSk5M+fP5Gj/nvPb0vOzs7SpEkTo69G6/WViIiHh4d06tRJwsPD5a+//rLb7VDEtl6XL18Wi8UiadKkkXTp0tncm1ksFomKihIXFxcpUKCA7NixQ3LkyJHI0b+6kJAQefz4saRMmVJExNi/RGL7hI2IiJCGDRv+bb+H9uD06dMyYsQIuXHjhjx79kwmTZpknMsqVKgg7u7uUrZsWbl+/bps3LhRSpYsKVmyZJEhQ4bIZ5995hB9bb6yREyAJVmtWrXSIkWKxJt+/vx5/eCDDxIcFtPePXr0SP38/LR69erx+nrq3bu3BgQEOMTQ8FYhISHq7++vFotF3377bVWN/8vit99+qxcvXlRVx2jdlZCpU6eqk5OTrlq1ymb6J598on5+fvrgwYPECew1eOutt9TPzy/e9NOnT2ufPn307NmziRDVv7N3715dvny58bhrdHS00Zw/oX4lHKEVm/VXqSNHjuhPP/2kixYt0j///FNVY4fX9fT0VF9f33itFRyl9VNcX375pZYoUULXr19vM/3KlStaq1Yt3bVrVyJF9t+tXr1aU6RIoZ999pnxuF10dLQOGzZMvb29bfrgcSQ3btzQjBkz2rQ+sZ4DNm7cqEuXLrX71ibWfWXr1q06efJko+Xk7NmztVq1apo3b17t1KmTzpkzR8ePH69Dhw7VIUOGONTj8nHdvXtXM2bMaNNy2XpuPnTokK5evdr4BdzRjiPjx4/X/Pnz68SJE42WNmFhYdqwYUOtW7eu3V+DxI1v/fr1Rr+hhw4d0nz58sV7pGvLli3q7e1tXGPZszlz5qirq6uuWLFCVWPPv1evXtUjR47o48ePbcqGhobqxx9/bPQxZ2XvxxJV1V9++UVTpUqlQ4cO1VOnThnTx44dqxkyZNAWLVrohx9+qF26dNE0adLY9b1M3O3x+PHjevDgQb1+/bqqxh4bfv75Z/Xy8tKWLVvavC88PNw4dtjjPhc3pqFDh2qFChU0Xbp02qJFC/3hhx9syoaFhWlgYGC86xJH2BbjioqK0uLFi2vVqlVtpj969Ejr1q2rI0eOTKTIXt7x48c1Xbp0GhQUpEOGDNFWrVqpu7u7cZ8SGhqqNWvW1KJFi9r0zRsVFfXCfuWSApJQr5H14HD69GnNlSuX+vn56ePHjzU8PFxDQkK0Tp066uvra5cHtr9jPSBfunRJs2fPrjVr1tTJkyfrL7/8ot27d1cPDw+7Phm9yI4dO7RBgwaaPn16vXz5sqr+XxPO3377TQsUKKBt2rTRqKgoh7ugtbp165Z+8MEHarFYtF+/fjp06FDt2rWruru7GwkBR2Pdf/bu3atp06bVDh06qGpsM9fw8HCtU6eOBgQE2P1+Zt2mbty4YfQT16tXL2N+VFSU/vDDD+rj46ONGzd2yH4lli5dqtmyZdOKFSuqn5+fpkmTRpcsWaKqsY/meXp6qr+/v03/UI7o/PnzWqZMGW3YsKH+/PPPGhkZqefOndMGDRpo5cqVHe6i73nffvutZsqUSf39/bVevXrapEkT9fDwcNhjSExMjIaFhWnbtm3Vz89PV65cacx79uyZ1qpVS999991EjPDlLV26VN3d3bV37942N45z5szRWrVqaatWrRz6sUkra19WnTt31ho1asS7serZs6fWq1fPoX4MU40/0EaxYsW0VKlS2qhRIy1btqwWK1bMrvsiU41fh8KFC+ukSZM0NDRUHzx4oJ999plWqlRJe/furffu3dPTp09rYGCg1qpVy+7P0+fPn9eMGTNqzZo1VVX1r7/+0sqVK6u3t7daLBYNDAy0ufnfs2ePFi1aVLt166aq9rvOnnfp0iUtVKiQTp8+PcH5CxYs0A8++EArVaqkbdq0setr/rjf+YABAzR37tzq5eWlqVKl0v79+xuPdf3888+aI0cObdOmzd9+hj0aMmSIZsyYUVetWqU7d+7UBg0aaPbs2W1+VLl8+bLWrFlTq1evrqr2X6eEWGPevHmz5suXT0uUKKGLFy/WuXPnakBAgBYrVsxuH72zunXrllauXFk/+eQTY9r169e1bNmyOmfOHGPazZs3jf4c/1eQhPoX/mlHjoqK0k2bNmmhQoU0W7ZsWrJkSS1TpoyWKlXKYTpHfp71JurKlSvavHlzLVasmObPn19r1KjhEB1/Wuv19OlTm6zykSNHtFKlSpo3b954v+jPmTPHGGnIXlnr9Xc3GQ8fPtQ5c+ZopUqVtHLlytqsWTOHuOn/p/3syZMnumjRIs2YMaMWLVpUK1eurBUqVNASJUrY/X5mtWrVKu3Vq5cuXbpUq1WrpgUKFDCeGVeN3e8WLFighQsX1pYtWzrURcShQ4c0Q4YMxkXR77//biRDrRcN169fVxcXF23QoIFN5/KOxLqNnThxQgMCArRAgQLq7u6uJUqU0HLlytl9J+Rxj40vmqcaexE4duxYbdSokX766ac2CQ9HtX//fq1bt66WLVtWP/jgAx09erRWq1bNIS5sVWNHxcuSJYvOnTs3wfnffPON+vr6at26dR2ixcnL2L17t/r5+WnVqlV17NixumjRIu3WrZvD/himantsWLlypY4cOVI7d+6s48aNs9u+yBIyadIkzZgxo+7Zs8dmRMLg4GAdO3as5suXT1OmTKne3t4OMViIauygPF988YVmzZpVW7VqpcWKFdNevXrp5s2bdceOHdqkSROtXLmy7tixw3jPrl277LpOCTl9+rTm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F/Hw8JBUqVIlcvQJi3vNOHDgQImOjpYzZ87IsGHDZMyYMfLs2TNJliyZREVFyfLly6VVq1byww8/JHLU/46qStq0aeXPP/80XltdvnxZZs2aZex/VvZ4bJw/f76899574uvrK4ULFzaOCenSpZNatWoZx0iR2PV7//59efbsmRQqVCixQn4t3NzcpH379hIZGSmdOnWSffv2ybZt26R///6yaNEief/9943rTHsT95h/8OBBEYmtT4UKFWT+/PnGNfKzZ89ERCRbtmySPXt2cXFxsfkce9se4+5DBw4ckPXr10vv3r0lVapU4ubmJk+fPpWTJ0+KSOxocI8ePRJVlb59+8r8+fONkWztlXXfGj16tMybN0++//57adq0qTEatEjsPvbo0SNp2rSp9OvXT+7evWvzGfY6gqH1e4+OjraZHvf+S1WN+YMHD5YhQ4aIp6fnmwvSHiRG5suRLVmyRL28vGx+1QkJCdGTJ08aGc41a9aoxWLRL774IrHCfCWXLl3SAgUKGK2frl+/runTp9egoCCbcl9//bXWrl3b6MTbUURGRmrlypX1zz//1EuXLqmXl5e+9957xvy1a9caHRXae+uTCxcuaM+ePdXd3V2XL1+uqqr9+vWz6Zw7rsjISK1SpYpDjRSnGtu5qbe3t3bv3l0rVaqkTk5OOnDgQJtfwufNm6cWi0V//PHHRIz05cX91efixYtapUoVzZUrl65atSreo13r16/XGjVqOMQjeNbYV65cqd7e3vrDDz8YLe+6deumFotFv/vuOw0ODtabN29q//79NWPGjHY9Qlfc9XHgwAEtXry47t+/XxcvXqzvvvuuFi5cWBcsWGCU2bNnjxYsWFDbt2+fGOH+a3PnzlUfHx9VjX0s4aefftL69etrzpw5deLEiaoa24pmxIgRDtdh5oABAzRr1qw6cuRI/fbbb9Visei7775rjCwZFRWl3bp105QpU9ptSxor6/Z4+PBhXbZsmS5atMjok+v999/XqlWr6siRI/XZs2d6+fJlHTx4sGbJkkVPnz6dmGG/lLj72qpVqzRFihTq6+urpUqV0owZM+ratWttyo0dO1a9vLzs/lxt9c0332iePHn04MGDqhrbqjBZsmRarFgxHTRokNH64tSpUzp9+nS7bo3xov0kbmt6Nzc3/eSTT/Tp06caGRmpoaGhWrduXQ0MDLT7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\n"
},
"metadata": {}
}
]
},
{
"cell_type": "code",
"source": [
"import trafilatura\n",
"from bs4 import BeautifulSoup\n",
"\n",
"soup = BeautifulSoup(open('/content/output/<urn:uuid:d748085c-6750-4d2d-9b65-0e0514f93e68>.html').read(), 'html.parser')\n",
"\n",
"\n",
"data = trafilatura.extract(open('/content/output/<urn:uuid:d748085c-6750-4d2d-9b65-0e0514f93e68>.html').read())"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 211
},
"id": "PoFFj82zuWSU",
"outputId": "aa7fe3cc-cd30-4806-8ee9-b081b394ac45"
},
"execution_count": null,
"outputs": [
{
"output_type": "error",
"ename": "FileNotFoundError",
"evalue": "[Errno 2] No such file or directory: '/content/output/<urn:uuid:d748085c-6750-4d2d-9b65-0e0514f93e68>.html'",
"traceback": [
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[0;31mFileNotFoundError\u001b[0m Traceback (most recent call last)",
"\u001b[0;32m/tmp/ipython-input-2808092196.py\u001b[0m in \u001b[0;36m<cell line: 0>\u001b[0;34m()\u001b[0m\n\u001b[1;32m 2\u001b[0m \u001b[0;32mfrom\u001b[0m \u001b[0mbs4\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mBeautifulSoup\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 3\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 4\u001b[0;31m \u001b[0msoup\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mBeautifulSoup\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mopen\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'/content/output/<urn:uuid:d748085c-6750-4d2d-9b65-0e0514f93e68>.html'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mread\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'html.parser'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 5\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 6\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;31mFileNotFoundError\u001b[0m: [Errno 2] No such file or directory: '/content/output/<urn:uuid:d748085c-6750-4d2d-9b65-0e0514f93e68>.html'"
]
}
]
},
{
"cell_type": "code",
"source": [
"import ssl\n",
"# Importing necessary libraries\n",
"from sklearn.datasets import fetch_20newsgroups\n",
"from sklearn.feature_extraction.text import TfidfVectorizer\n",
"from sklearn.linear_model import LogisticRegression\n",
"from sklearn.model_selection import train_test_split\n",
"from sklearn import metrics"
],
"metadata": {
"id": "BfxWMsL6V2fF"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"# Load dataset\n",
"dataset = fetch_20newsgroups()\n",
"X, y = dataset.data, dataset.target\n",
"# Splitting dataset into training and testing sets\n",
"X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=45)"
],
"metadata": {
"id": "xkkAdGbYV9DO"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"print(X_train[0])"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "4U7DN3oxWdKB",
"outputId": "9b7725ef-b20d-4f43-dab5-a45be7c7b014"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"From: jake@bony1.bony.com (Jake Livni)\n",
"Subject: Re: About this 'Center for Policy Resea\n",
"Organization: The Department of Redundancy Department\n",
"Lines: 85\n",
"\n",
"In article <1483500350@igc.apc.org> Center for Policy Research <cpr@igc.apc.org> writes:\n",
"\n",
">It seems to me that many readers of this conference are interested\n",
">who is behind the Center for Polict Research. I will oblige.\n",
"\n",
"Trumpets, please.\n",
"\n",
">My name is Elias Davidsson, Icelandic citizen, born in Palestine. My\n",
">mother was thrown from Germany because she belonged to the 'undesirables'\n",
">(at that times this group was defined as 'Jews'). She was forced to go\n",
">to Palestine due to many cynical factors. \n",
"\n",
"\"Forced to go to Palestine.\" How dreadful. Unlike other\n",
"undesirables/Jews, she wasn't forced to go into a gas chamber, forced\n",
"under a bulldozer, thrown into a river, forced into a \"Medical\n",
"experiment\" like a rat, forced to march until she dropped dead, burned\n",
"to nothingness in a crematorium. Your mother was \"forced to go to\n",
"Palestine.\" You have our deepest sympathies.\n",
"\n",
">I have meanwhile settled in Iceland (30 years ago) \n",
"\n",
"We are pleased to hear of your escape. At least you won't have to\n",
"suffer the same fate that your mother did.\n",
"\n",
">and met many people who were thrown out from\n",
">my homeland, Palestine, \n",
"\n",
"Your homeland, Palestine? \n",
"\n",
">because of the same reason (they belonged to\n",
">the 'indesirables'). \n",
"\n",
"Should we assume that you are refering here to Jews who were kicked\n",
"out of their homes in Jerusalem during the Jordanian Occupation of\n",
"East Jerusalem? These are the same people who are now being called\n",
"thieves for re-claiming houses that they once owned and lived in and\n",
"never sold to anyone?\n",
"\n",
">These people include my neighbors in Jerusalem\n",
">with the children of whom I played as child. Their crime: Theyare\n",
">not Jews. \n",
"\n",
"I have never heard of NOT being a Jew as a crime. Certainly in\n",
"Israel, there is no such crime. In some times and places BEING a Jew\n",
"is a crime, but NOT being a Jew??!!\n",
"\n",
">My conscience does not accept such injustice, period. \n",
"\n",
"Our brains do not accept your logic, yet, either.\n",
"\n",
">My\n",
">work for justice is done in the name of my principled opposition to racism\n",
">and racial discrimination. Those who protest against such practices\n",
">in Arab countries have my support - as long as their protest is based\n",
">on a principled position, but not as a tactic to deflect criticism\n",
">from Israel. \n",
"\n",
"The way you've written this, you seem to accept criticism in the Arab\n",
"world UNLESS it deflects criticism from Israel, in which case, we have\n",
"to presume, you no longer support criticism of the Arab world.\n",
"\n",
">The struggle against discrimination and racism is universal.\n",
"\n",
"Look who's taling about discrimination now!\n",
"\n",
">The Center for Policy Research is a name I gave to those activities\n",
">undertaken under my guidance in different domains, and which command\n",
">the support of many volunteers in Iceland. It is however not a formal\n",
">institution and works with minimal funds.\n",
"\n",
"Be careful. You are starting to sound like Barfling.\n",
"\n",
">Professionally I am music teacher and composer. I have published \n",
">several pieces and my piano music is taught widely in Europe.\n",
">\n",
">I would hope that discussion about Israel/Palestine be conducted in\n",
">a more civilized manner. Calling names is not helpful.\n",
"\n",
"Good. Don't call yourself \"ARF\" or \"the Center for Policy Research\",\n",
"either. \n",
"\n",
"-- \n",
"Jake Livni jake@bony1.bony.com Ten years from now, George Bush will\n",
"American-Occupied New York have replaced Jimmy Carter as the\n",
"My opinions only - employer has no opinions. standard of a failed President.\n",
"\n"
]
}
]
},
{
"cell_type": "code",
"source": [
"\n",
"# Convert dataset into feature vectors using TF-IDF Vectorizer\n",
"vectorizer = TfidfVectorizer(stop_words=\"english\")\n",
"X_train = vectorizer.fit_transform(X_train)"
],
"metadata": {
"id": "8aaMOzV1V_Kz"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"X_test = vectorizer.transform(X_test)"
],
"metadata": {
"id": "-KaCW-DEWVCF"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"# Train classifier (Logistic Regression)\n",
"clf = LogisticRegression()\n",
"clf.fit(X_train, y_train)\n",
"# Making predictions\n",
"pred = clf.predict(X_test)\n",
"# Evaluating the model\n",
"print(metrics.classification_report(y_test, pred))"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "DM2v7WI6Wz6e",
"outputId": "647acd5d-e7cc-4139-9f7c-9dbae0b88ded"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
" precision recall f1-score support\n",
"\n",
" 0 0.95 0.85 0.90 129\n",
" 1 0.77 0.83 0.80 162\n",
" 2 0.80 0.84 0.82 128\n",
" 3 0.80 0.80 0.80 163\n",
" 4 0.93 0.85 0.89 167\n",
" 5 0.85 0.87 0.86 142\n",
" 6 0.82 0.87 0.84 150\n",
" 7 0.84 0.88 0.86 150\n",
" 8 0.95 0.96 0.95 146\n",
" 9 0.96 0.97 0.96 153\n",
" 10 0.97 0.96 0.96 157\n",
" 11 0.98 0.91 0.94 137\n",
" 12 0.83 0.87 0.85 149\n",
" 13 0.95 0.95 0.95 133\n",
" 14 0.95 0.96 0.95 151\n",
" 15 0.79 0.96 0.87 118\n",
" 16 0.94 0.94 0.94 150\n",
" 17 0.98 0.99 0.98 129\n",
" 18 0.94 0.88 0.91 117\n",
" 19 0.90 0.61 0.73 98\n",
"\n",
" accuracy 0.89 2829\n",
" macro avg 0.89 0.89 0.89 2829\n",
"weighted avg 0.89 0.89 0.89 2829\n",
"\n"
]
}
]
},
{
"cell_type": "code",
"source": [
"with open(\"/content/output/<urn:uuid:d748085c-6750-4d2d-9b65-0e0514f93e68>.txt\") as fd:\n",
" file = fd.read()"
],
"metadata": {
"id": "hkyMk-QlXX19"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"print(file)"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "w3Yv1zLnZHy0",
"outputId": "92b710e6-2b26-46b7-d733-013e60cb98fc"
},
"execution_count": null,
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"2023: A Year of Climate Extremes and Climate Action in India\n",
"In a year defined by escalating climate extremes and remarkable strides towards climate action, 2023 has emerged as a stark reminder of the urgency of the climate crisis and the necessity for decisive action. The European Union’s Copernicus Climate Change Service has dubbed 2023 as the hottest year to date, with temperatures soaring to worrisome levels and two days crossing the ominous 2C mark above pre-industrial levels.\n",
"India’s Climate Challenges\n",
"India, in particular, bore the brunt of the climate change impact, with extreme weather conditions prevailing for a staggering 235 days between January and September. A report by the Centre for Science and Environment estimated a heavy toll of 2,923 lives, the annihilation of nearly 2 million hectares of crops, and the decimation of over 80,000 homes due to heatwaves, floods, cyclones, and lightning. The frequency and severity of such events are projected to worsen with the intensifying climate crisis.\n",
"The Oceanic and Agricultural Impact\n",
"The world’s oceans recorded their highest ever temperature in August, averaging 20.96 degrees Celsius, a clear warning to marine and human ecosystems. India, on the other hand, grappled with its driest August since 1901, a 36 percent rainfall deficit that severely impacted key agricultural states, triggering drought and water shortages. The India Meteorological Department reported an average increase of 2.5 days in the duration of heatwaves over the past 30 years, a trend likely to exacerbate with climate change.\n",
"Biodiversity Threat and Global Forest Fires\n",
"A new study in the PLOS ONE journal indicated that up to two million species are at risk of extinction, doubling the UN’s previous estimates. Satellite data revealed that forest fires have intensified globally, burning twice as much tree cover as 20 years ago. India’s rainforests have not been spared, experiencing a dramatic increase in forest fires.\n",
"India’s Climate Action Initiatives\n",
"However, India made significant strides towards climate action in 2023. The country’s renewable energy capacity reached 172GW in March, marking a significant increase from 115.94GW in March 2018. India also proposed to host the UN climate conference in 2028 and launched its Green Credit Initiative to address the challenges of a rapidly warming world. The country submitted its third national communication to the United Nations Framework Convention on Climate Change, reducing GDP emission intensity by 33% between 2005 and 2019.\n",
"Subscribe to BNN Breaking\n",
"Sign up for our daily newsletter covering global breaking news around the world.\n",
"Comments\n"
]
}
]
},
{
"cell_type": "code",
"source": [
"files = [open(x).read() for x in glob.glob(\"/content/output/*.txt\")]\n",
"y_new = clf.predict(vectorizer.transform(files))"
],
"metadata": {
"id": "ukksqCHjYg7X"
},
"execution_count": null,
"outputs": []
},
{
"cell_type": "code",
"source": [
"new_df = pd.DataFrame(zip(files, [list(dataset.target_names)[x] for x in y_new]))\n",
"new_df.columns = ['text', 'label']\n",
"new_df"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 3691
},
"id": "6CXtLeFoY82I",
"outputId": "c4baf419-8d82-4d2e-9586-48a78736bedf"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
" text label\n",
"0 总统新书《独立时代》公布电子版\\n18:13, 04 一月 2018\\n哈通社/阿斯塔纳/1... sci.electronics\n",
"1 comp.windows.x\n",
"2 comp.windows.x\n",
"3 comp.windows.x\n",
"4 2023: A Year of Climate Extremes and Climate A... sci.med\n",
"5 comp.windows.x\n",
"6 100 Swedish kronor to Costa Rican colóns\\nConv... sci.electronics\n",
"7 comp.windows.x\n",
"8 Gözler emekli maaş zammına çevrildi! 2024 Emek... sci.electronics\n",
"9 comp.windows.x\n",
"10 comp.windows.x\n",
"11 comp.windows.x\n",
"12 Lake Area residents share their New Year’s res... talk.politics.misc\n",
"13 comp.windows.x\n",
"14 We've made it to the final day of 2023, and wh... rec.sport.baseball\n",
"15 Revelers counted down to midnight on New Year'... talk.politics.mideast\n",
"16 comp.windows.x\n",
"17 BALTIMORE (AP) — Lamar Jackson and the Baltimo... rec.sport.hockey\n",
"18 INDIANAPOLIS -- Jack Jones lined up on the lef... rec.sport.hockey\n",
"19 comp.windows.x"
],
"text/html": [
"\n",
" <div id=\"df-43ed34d8-2f4b-4f6a-8221-54bf37ce77ef\" class=\"colab-df-container\">\n",
" <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>text</th>\n",
" <th>label</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>总统新书《独立时代》公布电子版\\n18:13, 04 一月 2018\\n哈通社/阿斯塔纳/1...</td>\n",
" <td>sci.electronics</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td></td>\n",
" <td>comp.windows.x</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td></td>\n",
" <td>comp.windows.x</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td></td>\n",
" <td>comp.windows.x</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>2023: A Year of Climate Extremes and Climate A...</td>\n",
" <td>sci.med</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td></td>\n",
" <td>comp.windows.x</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>100 Swedish kronor to Costa Rican colóns\\nConv...</td>\n",
" <td>sci.electronics</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td></td>\n",
" <td>comp.windows.x</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>Gözler emekli maaş zammına çevrildi! 2024 Emek...</td>\n",
" <td>sci.electronics</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td></td>\n",
" <td>comp.windows.x</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td></td>\n",
" <td>comp.windows.x</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td></td>\n",
" <td>comp.windows.x</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>Lake Area residents share their New Year’s res...</td>\n",
" <td>talk.politics.misc</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td></td>\n",
" <td>comp.windows.x</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>We've made it to the final day of 2023, and wh...</td>\n",
" <td>rec.sport.baseball</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>Revelers counted down to midnight on New Year'...</td>\n",
" <td>talk.politics.mideast</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td></td>\n",
" <td>comp.windows.x</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>BALTIMORE (AP) — Lamar Jackson and the Baltimo...</td>\n",
" <td>rec.sport.hockey</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>INDIANAPOLIS -- Jack Jones lined up on the lef...</td>\n",
" <td>rec.sport.hockey</td>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <td></td>\n",
" <td>comp.windows.x</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>\n",
" <div class=\"colab-df-buttons\">\n",
"\n",
" <div class=\"colab-df-container\">\n",
" <button class=\"colab-df-convert\" onclick=\"convertToInteractive('df-43ed34d8-2f4b-4f6a-8221-54bf37ce77ef')\"\n",
" title=\"Convert this dataframe to an interactive table.\"\n",
" style=\"display:none;\">\n",
"\n",
" <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\" viewBox=\"0 -960 960 960\">\n",
" <path d=\"M120-120v-720h720v720H120Zm60-500h600v-160H180v160Zm220 220h160v-160H400v160Zm0 220h160v-160H400v160ZM180-400h160v-160H180v160Zm440 0h160v-160H620v160ZM180-180h160v-160H180v160Zm440 0h160v-160H620v160Z\"/>\n",
" </svg>\n",
" </button>\n",
"\n",
" <style>\n",
" .colab-df-container {\n",
" display:flex;\n",
" gap: 12px;\n",
" }\n",
"\n",
" .colab-df-convert {\n",
" background-color: #E8F0FE;\n",
" border: none;\n",
" border-radius: 50%;\n",
" cursor: pointer;\n",
" display: none;\n",
" fill: #1967D2;\n",
" height: 32px;\n",
" padding: 0 0 0 0;\n",
" width: 32px;\n",
" }\n",
"\n",
" .colab-df-convert:hover {\n",
" background-color: #E2EBFA;\n",
" box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
" fill: #174EA6;\n",
" }\n",
"\n",
" .colab-df-buttons div {\n",
" margin-bottom: 4px;\n",
" }\n",
"\n",
" [theme=dark] .colab-df-convert {\n",
" background-color: #3B4455;\n",
" fill: #D2E3FC;\n",
" }\n",
"\n",
" [theme=dark] .colab-df-convert:hover {\n",
" background-color: #434B5C;\n",
" box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n",
" filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n",
" fill: #FFFFFF;\n",
" }\n",
" </style>\n",
"\n",
" <script>\n",
" const buttonEl =\n",
" document.querySelector('#df-43ed34d8-2f4b-4f6a-8221-54bf37ce77ef button.colab-df-convert');\n",
" buttonEl.style.display =\n",
" google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
"\n",
" async function convertToInteractive(key) {\n",
" const element = document.querySelector('#df-43ed34d8-2f4b-4f6a-8221-54bf37ce77ef');\n",
" const dataTable =\n",
" await google.colab.kernel.invokeFunction('convertToInteractive',\n",
" [key], {});\n",
" if (!dataTable) return;\n",
"\n",
" const docLinkHtml = 'Like what you see? Visit the ' +\n",
" '<a target=\"_blank\" href=https://colab.research.google.com/notebooks/data_table.ipynb>data table notebook</a>'\n",
" + ' to learn more about interactive tables.';\n",
" element.innerHTML = '';\n",
" dataTable['output_type'] = 'display_data';\n",
" await google.colab.output.renderOutput(dataTable, element);\n",
" const docLink = document.createElement('div');\n",
" docLink.innerHTML = docLinkHtml;\n",
" element.appendChild(docLink);\n",
" }\n",
" </script>\n",
" </div>\n",
"\n",
"\n",
" <div id=\"df-5a82806b-07c9-42ae-873a-bba93ed0dbe8\">\n",
" <button class=\"colab-df-quickchart\" onclick=\"quickchart('df-5a82806b-07c9-42ae-873a-bba93ed0dbe8')\"\n",
" title=\"Suggest charts\"\n",
" style=\"display:none;\">\n",
"\n",
"<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n",
" width=\"24px\">\n",
" <g>\n",
" <path d=\"M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zM9 17H7v-7h2v7zm4 0h-2V7h2v10zm4 0h-2v-4h2v4z\"/>\n",
" </g>\n",
"</svg>\n",
" </button>\n",
"\n",
"<style>\n",
" .colab-df-quickchart {\n",
" --bg-color: #E8F0FE;\n",
" --fill-color: #1967D2;\n",
" --hover-bg-color: #E2EBFA;\n",
" --hover-fill-color: #174EA6;\n",
" --disabled-fill-color: #AAA;\n",
" --disabled-bg-color: #DDD;\n",
" }\n",
"\n",
" [theme=dark] .colab-df-quickchart {\n",
" --bg-color: #3B4455;\n",
" --fill-color: #D2E3FC;\n",
" --hover-bg-color: #434B5C;\n",
" --hover-fill-color: #FFFFFF;\n",
" --disabled-bg-color: #3B4455;\n",
" --disabled-fill-color: #666;\n",
" }\n",
"\n",
" .colab-df-quickchart {\n",
" background-color: var(--bg-color);\n",
" border: none;\n",
" border-radius: 50%;\n",
" cursor: pointer;\n",
" display: none;\n",
" fill: var(--fill-color);\n",
" height: 32px;\n",
" padding: 0;\n",
" width: 32px;\n",
" }\n",
"\n",
" .colab-df-quickchart:hover {\n",
" background-color: var(--hover-bg-color);\n",
" box-shadow: 0 1px 2px rgba(60, 64, 67, 0.3), 0 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
" fill: var(--button-hover-fill-color);\n",
" }\n",
"\n",
" .colab-df-quickchart-complete:disabled,\n",
" .colab-df-quickchart-complete:disabled:hover {\n",
" background-color: var(--disabled-bg-color);\n",
" fill: var(--disabled-fill-color);\n",
" box-shadow: none;\n",
" }\n",
"\n",
" .colab-df-spinner {\n",
" border: 2px solid var(--fill-color);\n",
" border-color: transparent;\n",
" border-bottom-color: var(--fill-color);\n",
" animation:\n",
" spin 1s steps(1) infinite;\n",
" }\n",
"\n",
" @keyframes spin {\n",
" 0% {\n",
" border-color: transparent;\n",
" border-bottom-color: var(--fill-color);\n",
" border-left-color: var(--fill-color);\n",
" }\n",
" 20% {\n",
" border-color: transparent;\n",
" border-left-color: var(--fill-color);\n",
" border-top-color: var(--fill-color);\n",
" }\n",
" 30% {\n",
" border-color: transparent;\n",
" border-left-color: var(--fill-color);\n",
" border-top-color: var(--fill-color);\n",
" border-right-color: var(--fill-color);\n",
" }\n",
" 40% {\n",
" border-color: transparent;\n",
" border-right-color: var(--fill-color);\n",
" border-top-color: var(--fill-color);\n",
" }\n",
" 60% {\n",
" border-color: transparent;\n",
" border-right-color: var(--fill-color);\n",
" }\n",
" 80% {\n",
" border-color: transparent;\n",
" border-right-color: var(--fill-color);\n",
" border-bottom-color: var(--fill-color);\n",
" }\n",
" 90% {\n",
" border-color: transparent;\n",
" border-bottom-color: var(--fill-color);\n",
" }\n",
" }\n",
"</style>\n",
"\n",
" <script>\n",
" async function quickchart(key) {\n",
" const quickchartButtonEl =\n",
" document.querySelector('#' + key + ' button');\n",
" quickchartButtonEl.disabled = true; // To prevent multiple clicks.\n",
" quickchartButtonEl.classList.add('colab-df-spinner');\n",
" try {\n",
" const charts = await google.colab.kernel.invokeFunction(\n",
" 'suggestCharts', [key], {});\n",
" } catch (error) {\n",
" console.error('Error during call to suggestCharts:', error);\n",
" }\n",
" quickchartButtonEl.classList.remove('colab-df-spinner');\n",
" quickchartButtonEl.classList.add('colab-df-quickchart-complete');\n",
" }\n",
" (() => {\n",
" let quickchartButtonEl =\n",
" document.querySelector('#df-5a82806b-07c9-42ae-873a-bba93ed0dbe8 button');\n",
" quickchartButtonEl.style.display =\n",
" google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
" })();\n",
" </script>\n",
" </div>\n",
"\n",
" <div id=\"id_fdfaa4b2-5e62-438b-b164-69f5348aa394\">\n",
" <style>\n",
" .colab-df-generate {\n",
" background-color: #E8F0FE;\n",
" border: none;\n",
" border-radius: 50%;\n",
" cursor: pointer;\n",
" display: none;\n",
" fill: #1967D2;\n",
" height: 32px;\n",
" padding: 0 0 0 0;\n",
" width: 32px;\n",
" }\n",
"\n",
" .colab-df-generate:hover {\n",
" background-color: #E2EBFA;\n",
" box-shadow: 0px 1px 2px rgba(60, 64, 67, 0.3), 0px 1px 3px 1px rgba(60, 64, 67, 0.15);\n",
" fill: #174EA6;\n",
" }\n",
"\n",
" [theme=dark] .colab-df-generate {\n",
" background-color: #3B4455;\n",
" fill: #D2E3FC;\n",
" }\n",
"\n",
" [theme=dark] .colab-df-generate:hover {\n",
" background-color: #434B5C;\n",
" box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.15);\n",
" filter: drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.3));\n",
" fill: #FFFFFF;\n",
" }\n",
" </style>\n",
" <button class=\"colab-df-generate\" onclick=\"generateWithVariable('new_df')\"\n",
" title=\"Generate code using this dataframe.\"\n",
" style=\"display:none;\">\n",
"\n",
" <svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24px\"viewBox=\"0 0 24 24\"\n",
" width=\"24px\">\n",
" <path d=\"M7,19H8.4L18.45,9,17,7.55,7,17.6ZM5,21V16.75L18.45,3.32a2,2,0,0,1,2.83,0l1.4,1.43a1.91,1.91,0,0,1,.58,1.4,1.91,1.91,0,0,1-.58,1.4L9.25,21ZM18.45,9,17,7.55Zm-12,3A5.31,5.31,0,0,0,4.9,8.1,5.31,5.31,0,0,0,1,6.5,5.31,5.31,0,0,0,4.9,4.9,5.31,5.31,0,0,0,6.5,1,5.31,5.31,0,0,0,8.1,4.9,5.31,5.31,0,0,0,12,6.5,5.46,5.46,0,0,0,6.5,12Z\"/>\n",
" </svg>\n",
" </button>\n",
" <script>\n",
" (() => {\n",
" const buttonEl =\n",
" document.querySelector('#id_fdfaa4b2-5e62-438b-b164-69f5348aa394 button.colab-df-generate');\n",
" buttonEl.style.display =\n",
" google.colab.kernel.accessAllowed ? 'block' : 'none';\n",
"\n",
" buttonEl.onclick = () => {\n",
" google.colab.notebook.generateWithVariable('new_df');\n",
" }\n",
" })();\n",
" </script>\n",
" </div>\n",
"\n",
" </div>\n",
" </div>\n"
],
"application/vnd.google.colaboratory.intrinsic+json": {
"type": "dataframe",
"variable_name": "new_df",
"summary": "{\n \"name\": \"new_df\",\n \"rows\": 20,\n \"fields\": [\n {\n \"column\": \"text\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 10,\n \"samples\": [\n \"BALTIMORE (AP) \\u2014 Lamar Jackson and the Baltimore Ravens clinched a division title and the top seed in the AFC.\\nThere\\u2019s no mathematical way to tell if the star quarterback wrapped up the MVP award, too, but his fans made their views on the topic clear.\\nSerenaded throughout by \\u201cMVP!\\u201d chants, Jackson threw for 321 yards and five touchdowns as the Ravens eviscerated the Miami Dolphins 56-19 on Sunday. Baltimore won its first AFC North title since 2019, when Jackson was named MVP. He might be closing in on that honor again.\\n\\u201cHe played a perfect football game in terms of the passing game,\\u201d coach John Harbaugh said.\\nThe stat sheet agreed. Jackson went 18 of 21 without an interception. He finished with a perfect passer rating of 158.3.\\nJackson missed the end of the past two Baltimore seasons because of injuries. Now the Ravens can rest him voluntarily next week if they want, although Harbaugh was noncommittal on that.\\nBaltimore (13-3) has won six straight, and the Ravens rolled through a grueling December stretch that included games against the Rams, Jaguars, 49ers and Dolphins.\\n\\u201cI don\\u2019t know if I\\u2019ve seen a more impressive performance in a game. I\\u2019m not sure I\\u2019ve seen a more impressive performance in a season to date,\\u201d said Harbaugh, whose team will have a first-round bye before hosting its postseason opener. \\u201cObviously we have a lot more to do. We\\u2019ve got a lot of work to do in front of us, but this is a mature football team.\\u201d\\nMiami (11-5) is also postseason bound, but now the winner of next weekend\\u2019s Dolphins-Bills game will take the AFC East. Miami was without two offensive stars in receiver Jaylen Waddle (ankle) and running back Raheem Mostert (knee, ankle).\\nAnd now the Dolphins face another potentially significant injury. Linebacker Bradley Chubb \\u2014 with his team down 30 points \\u2014 had to be carted off with 3:05 remaining after hurting his knee.\\nThat raised obvious questions about why Chubb was still in the game.\\n\\u201cThere\\u2019s times like this one where I would like a time machine for sure,\\u201d Miami coach Mike McDaniel said.\\nJackson had more touchdown passes than incompletions. That\\u2019s a feat Miami\\u2019s Tua Tagovailoa also accomplished in a 70-20 win over Denver in Week 3.\\nJackson also had a perfect passer rating against Miami in 2019. He joins Tom Brady (against Detroit) as the only quarterbacks with two perfect ratings against the same team, with a minimum of 20 attempts.\\n\\u201cI love the guy,\\u201d Ravens linebacker Patrick Queen said. \\u201cHe proved everything he had to prove. If anybody else saying otherwise, they just don\\u2019t like Lamar. That\\u2019s what it is. They don\\u2019t like us, they don\\u2019t like Baltimore, they don\\u2019t like Lamar.\\u201d\\nThis matchup featured Miami\\u2019s top-ranked scoring offense and Baltimore\\u2019s top-ranked scoring defense. In the early going, the Dolphins had the upper hand. They scored on the game\\u2019s first drive when Tagovailoa threw an 8-yard pass to Cedrick Wilson Jr. Jackson answered with a 20-yard scoring strike to Justice Hill.\\nMiami would have had another touchdown on its second drive, but Tyreek Hill bobbled the ball in the end zone and the Dolphins kicked a field goal.\\nThe Ravens took the lead for good in the second quarter when Gus Edwards capped an 89-yard drive with a 1-yard scoring run. After another Miami field goal, Jackson immediately found Zay Flowers open deep for a 75-yard touchdown that made it 21-13.\\nThe Ravens struck again 94 seconds later thanks to a pair of one-handed catches. The first was an interception by Roquan Smith, the second a 35-yard catch-and-run TD by Isaiah Likely on fourth-and-7.\\nJustice Hill returned the second-half kickoff 78 yards, setting up Jackson\\u2019s 7-yard TD toss to Likely that made it 35-13.\\nMiami trailed 35-14 with under 13 minutes remaining last season before rallying to a 42-38 win over the Ravens. The Dolphins started the fourth quarter with a touchdown this time, a 1-yard pass from Tagovailoa to De\\u2019Von Achane, but it was Baltimore that closed strong.\\n\\u201cLast year, the score was looking like that at halftime and third quarter. Then those guys started making plays and we didn\\u2019t do anything,\\u201d Jackson said. \\u201cThe only thing that was on my mind was to finish the game, and today we did it.\\u201d\\nThe Ravens marched right back down the field and scored on Jackson\\u2019s 4-yard pass to Patrick Ricard to go up 42-19. Melvin Gordon III added a 7-yard touchdown run, and a Miami fumble led to a another TD. Tyler Huntley threw a scoring pass to Charlie Kolar on third-and-goal from the 19.\\n(That was Huntley\\u2019s only pass attempt. He also finished with a perfect 158.3 passer rating.)\\n\\u201cWe\\u2019ll look at the film tomorrow, see what we can do better and move on to the Bills,\\u201d Tagovailoa said. \\u201cEverything is still in front of us for what we want to accomplish as a team.\\u201d\\nSTREAKS AND MILESTONES\\nThe Ravens rushed for at least 100 yards for a 32nd consecutive game and had a sack for a 37th straight. \\u2026 Jackson reached 800 yards rushing on the season, becoming the first quarterback in NFL history to do that three times. \\u2026 This was the second-highest scoring total in franchise history for the Ravens, behind only their 59-10 win at Miami in that 2019 romp. \\u2026 Tyreek Hill surpassed 10,000 yards receiving for his career.\\nINJURIES\\nThe teams weren\\u2019t at full strength at the start, and the injuries continued throughout the game. Miami lost CB Xavien Howard (foot). Baltimore CB Marlon Humphrey (calf) went down as well. Ravens NT Michael Pierce and S Daryl Worley were both evaluated for head injuries.\\nUP NEXT\\nDolphins: Host Buffalo next weekend.\\nRavens: Host Pittsburgh next weekend.\\n___\\nAP NFL: https://apnews.com/hub/nfl\",\n \"\",\n \"Lake Area residents share their New Year\\u2019s resolutions\\nLAKE CHARLES, La. (KPLC) - The new year is just hours away now and many are contemplating what their resolution will be for 2024.\\nAccording to The History Channel, the ancient Babylonians are said to have been the first people to make New Year\\u2019s resolutions, four-thousand years ago.\\n\\u201cMy new year\\u2019s resolution is to stop eating as much fast food, live a healthier lifestyle,\\u201d Colton Ramsey said. \\u201cJust because I\\u2019m getting a little older, so I wanna take better care of my body and the things I put in it.\\u201d\\nEach of the people we talked to on New Year\\u2019s Eve says this isn\\u2019t the first time they have attempted a resolution.\\nThe most popular resolution we heard was that many want to be healthier in 2024 but some want to build stronger connections.\\n\\u201cRestoring the relationship with my family, just getting along with people and just trying to stay positive through all my trials and tribulations,\\u201d Pat Thibodeaux said.\\nAccording to recent research, as many as 45 percent of Americans say they make New Year\\u2019s resolutions, while only 8 percent are successful in achieving their goals.\\n\\u201cMy New Year\\u2019s Resolution for 2024 is to be more positive and to just bring good to all that I can. I think the world needs a little bit more of that now. Hopefully everyone has a positive 2024,\\u201d Camille Semien said.\\nThat leaves us with one question, do you have a New Year\\u2019s resolution?\\nCopyright 2023 KPLC. All rights reserved.\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"label\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 7,\n \"samples\": [\n \"sci.electronics\",\n \"comp.windows.x\",\n \"talk.politics.mideast\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"
}
},
"metadata": {},
"execution_count": 150
}
]
},
{
"cell_type": "code",
"source": [
"y_new"
],
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/"
},
"id": "toGT2XxWYyTg",
"outputId": "815a52cd-5659-4377-9be9-3a9216bc73e7"
},
"execution_count": null,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"array([13])"
]
},
"metadata": {},
"execution_count": 138
}
]
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment