Issue #643

Scrapy Extensions, REST APIs, Django Sub-Commands, and More

Aug. 20, 2024

Scrapy Extensions, REST APIs, Django Sub-Commands, and More
#643 – AUGUST 20, 2024 VIEW IN BROWSER
The PyCoder’s Weekly Logo
Using a Custom Scrapy Extension to Log to a DB
The Scrapy crawl stat logs are useful for tracking and monitoring the performance of a spider. If you want to keep them longer rather than just see the console printout, you can have them written to a database.
XIEGERTS.COM • Shared by Stephen

Interacting With REST APIs and Python
In this video course, you’ll learn how to use Python to communicate with REST APIs. You’ll learn about REST architecture and how to use the requests library to get data from a REST API. You’ll also explore different Python tools you can use to build REST APIs.
REAL PYTHON course

Posit Connect - Help Your Analytics Team Share and Collaborate
Tired of tediously send files and trying to use general-purpose collaboration tools? Posit Connect makes it easy to share, collaborate, and get feedback on your data science work including Jupyter notebooks, Plotly dashboards, Streamlit, Quarto, Shiny or other interactive analytics applications →
POSITsponsor

Django: Create Management Sub-Commands
argparse, the standard library module that Django uses for parsing command line options, supports sub-commands. These are pretty neat for providing an expansive API without hundreds of individual commands. This article shows you how to write your own.
ADAM JOHNSON

PEP 752: Package Repository Namespaces (Added)
PYTHON

Quiz: Python Protocols: Leveraging Structural Subtyping
REAL PYTHON

Quiz: Logging in Python
REAL PYTHON


Discussions


How Do You Motivate Yourself to Sit Everyday & Code?
REDDIT


Articles & Tutorials


Crawling Infinite Scroll Pages With Playwright
When crawling websites with Scrapy you’ll quickly come across all sorts of scenarios that require you to get creative or interact with the page that you’re trying to scrape. One of these scenarios is when you need to crawl an infinite scroll page. This type of website page loads more content as you scroll down the page like a social media feed.
STEPHEN SIEGERT • Shared by Stephen Siegert

Automating Boolean-Based SQL Injection With Python
SQL injection is the process of tricking a database into doing unintended things by modifying the input values to a query. Boolean-based blind injection is a subset that reveals structural information about the database. These can be hard to craft by hand, this article shows you how to automate the process to help do penetration testing.
TREBLEDJ

Automatic Speech Recognition with AssemblyAI
Experience near-human accuracy, low-latency performance, and advanced Speech AI capabilities with AssemblyAI’s Speech-to-Text API. Sign up today and receive free API credits—No credit card required. Get $50 Credit →
ASSEMBLY AIsponsor

Logging in Python
If you use Python’s print() function to get information about the flow of your programs, then logging is the natural next step for you. This tutorial will guide you through creating your first logs and show you ways to curate them to grow with your projects.
REAL PYTHON

Recent CPython Function Call Performance Improvements
How costly it is to call functions and builtins in your python code? Does inlining help? How have the recent CPython releases improved performance in these areas? This article dives deep on function performance.
ABHINAV UPADHYAY

Debugging Running Python Scripts With PDB via GDB
On *nix systems with GDB installed, you can attach to already running processes. This article shows you how to combine that with Python’s PDB debugger to then add breakpoints to Python in a running script.
DOMINIK CZARNOTA

Approximating Sum Types in Python With Pydantic
This is a deeper dive into types and Pydantic around how to build “correct by construction” design patterns. Building your objects so that validation becomes a single call.
WILLIAM WOODRUFF

PyTorch vs TensorFlow for Your Python Deep Learning Project
PyTorch vs Tensorflow: Which one should you use? Learn about these two popular deep learning libraries and how to choose the best one for your project.
REAL PYTHON

How to Plot in the Terminal With Python and Textualize
Have you ever wanted to create a plot or graph in your terminal? Learn how with the textual-plotext package.
MIKE DRISCOLL

It Works on My Machine. Why?
A list of things to check when something works on your computer but not on someone else’s.
MATHEUS RICHARD

Python Packaging Is Great Now: uv Is All You Need
Juan talks about his love for the uv tool and how it has simplified Python packaging.
JUAN LUIS CANO RODRIGUEZ


Projects & Code


Brought to you by Real Python for Teamssponsor
Online Python training created by a community of experts. Give your team the real-world Python skills they need to succeed →

TTS: Deep Learning Toolkit for Text-to-Speech
GITHUB.COM/COQUI-AI

pyawaitable: CPython API for Asynchronous Functions
GITHUB.COM/ZEROINTENSITY

audiosample: NumPy-Like Audio Manipulation Library
GITHUB.COM/DEEPDUB-AI

django-http-debug: Endpoints That Log and Return Mock Data
GITHUB.COM/SIMONW

emval: Speeding Up Email Validation 1000x
GITHUB.COM/BNKC • Shared by lev ostatnigrosh

📆🐍 Upcoming Python Events


Weekly Real Python Office Hours Q&A (Virtual)
August 21, 2024

PyCon Somalia 2024
August 21 to August 23, 2024

Kiwi PyCon XIII
August 23 to August 26, 2024

PyDelhi User Group Meetup
August 24, 2024

EuroSciPy 2024
August 26 to August 31, 2024

PyCon PL 2024
August 29 to September 1, 2024
Happy Pythoning!
Copyright © 2024 PyCoder’s Weekly, All rights reserved.