Retour
Explorez tous les épisodes du podcast CyberCode Academy
Plongez dans la liste complète des épisodes de CyberCode Academy. Chaque épisode est catalogué accompagné de descriptions détaillées, ce qui facilite la recherche et l'exploration de sujets spécifiques. Suivez tous les épisodes de votre podcast préféré et ne manquez aucun contenu pertinent.
| Titre | Date | Durée | |
|---|---|---|---|
| Course 42 - Mobile Malware Analysis Fundamentals | Episode 15: iOS and Android Case Studies and Reporting | 11 Sep 2026 | 00:20:39 | |
This module provides a hands-on exploration of mobile malware analysis through two distinct case studies, one for iOS and one for Android, designed to let you work independently to uncover the functionality of malicious programs. The episode is structured into the following key components: 1. iOS Case Study: Corporate Security Assessment The first scenario involves a corporate iPhone reported for "acting weird". As a security analyst, your goal is to:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 42 - Mobile Malware Analysis Fundamentals | Episode 14: Architecture and Essential Toolkits | 10 Sep 2026 | 00:24:31 | |
This episode provides a comprehensive guide to designing and equipping a professional mobile malware analysis lab, with a focus on building a secure, repeatable, and well-instrumented environment for both iOS and Android research.1. Lab Design and InfrastructureThe episode begins by emphasizing that a professional malware lab requires more than simply running a few virtual machines. Researchers must carefully plan the environment around security, isolation, performance, and repeatability.Key considerations include:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 42 - Mobile Malware Analysis Fundamentals | Episode 13: Designing and Architecting a Scalable Mobile Malware Analysis Lab | 09 Sep 2026 | 00:17:34 | |
This episode focuses on designing a professional, scalable, and repeatable mobile malware analysis laboratory, moving beyond a simple virtual-machine setup toward an environment suitable for long-term security research.1. Strategic Lab PlanningBefore building the lab, analysts should define its purpose and scope:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 42 - Mobile Malware Analysis Fundamentals | Episode 12: Dynamic Analysis Tools, Techniques, and Assessment | 08 Sep 2026 | 00:28:08 | |
This episode covers dynamic analysis of Android applications, with a strong emphasis on runtime interaction, monitoring, and debugging.1. Android Dynamic Analysis with DrozerThe episode introduces Drozer, an Android security assessment framework that allows researchers to interact with application components while they are running.Key capabilities include:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 42 - Mobile Malware Analysis Fundamentals | Episode 11: Dynamic Analysis for iOS and Android | 07 Sep 2026 | 00:24:15 | |
Dynamic Mobile Malware Analysis — iOS and AndroidThis episode expands dynamic malware analysis beyond basic runtime observation and introduces process instrumentation, debugging, network capture, and automated mobile-security frameworks across both iOS and Android.The central idea is:Static analysis tells you what a sample may be capable of; dynamic analysis shows what it actually does when executed.1. iOS Dynamic AnalysisThe iOS portion focuses on three major capabilities:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 42 - Mobile Malware Analysis Fundamentals | Episode 10: The Essentials of Dynamic Analysis | 06 Sep 2026 | 00:23:12 | |
Dynamic iOS Malware Analysis — Key Takeaways
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 42 - Mobile Malware Analysis Fundamentals | Episode 9: Mastering Basic Static Analysis for Mobile Malware | 05 Sep 2026 | 00:21:16 | |
Mobile Malware Static Analysis — Module ConclusionThis episode serves as a knowledge check and consolidation of the basic static-analysis methodology covered across both iOS and Android. The emphasis is not on learning one particular tool, but on developing a repeatable investigation process.1. iOS Static AnalysisSeveral important tools and artifacts are reinforced.class-dumpUsed primarily to extract and inspect Objective-C class information from compiled iOS binaries.It can help reveal:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 42 - Mobile Malware Analysis Fundamentals | Episode 8: Static Analysis of Android Banking Trojans | 04 Sep 2026 | 00:21:15 | |
Android Basic Static Analysis — Advanced Study GuideThis episode demonstrates how to perform basic static analysis of Android applications, moving from initial malware triage to manifest analysis, code decompilation, and identification of suspicious functionality.1. Android Malware Analysis MethodologyAlthough Android and iOS have very different architectures, the fundamental malware-analysis methodology remains similar:Sample ↓ Identification ↓ Hashing ↓ Threat Intelligence ↓ Manifest Analysis ↓ Code Analysis ↓ Behavioral Hypothesis ↓ Dynamic Analysis The objective of static analysis is to understand as much as possible without executing the malware.2. Initial APK IdentificationThe first stage is to establish basic information about the APK.Useful checks include:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 42 - Mobile Malware Analysis Fundamentals | Episode 7: Malware Tools and Practical Lab Walkthrough | 03 Sep 2026 | 00:21:03 | |
iOS Basic Static Analysis — Advanced Study GuideThis episode moves from the fundamentals of iOS malware analysis into hands-on static binary analysis, demonstrating how command-line utilities and reverse-engineering tools can reveal valuable information without executing the malware.1. otool — Inspecting Mach-O Binariesotool is one of the most useful command-line utilities for examining Apple Mach-O binaries.A particularly important option is:otool -L application This displays the dynamic libraries linked by the executable.Analyzing these libraries can provide early clues about the application's functionality and dependencies.For example, an analyst may investigate whether an application relies on libraries associated with:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 42 - Mobile Malware Analysis Fundamentals | Episode 6: The Evolution and Methodology of iOS Malware Attacks | 02 Sep 2026 | 00:22:42 | |
iOS Malware Analysis — Key TakeawaysThis episode introduces the fundamentals of iOS malware analysis, combining the historical evolution of mobile threats with the methodology used by security researchers to investigate them.1. Understanding Mobile MalwareMobile malware is malicious software designed to disrupt devices, steal information, gain unauthorized access, or perform malicious actions. Common categories include:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 42 - Mobile Malware Analysis Fundamentals | Episode 5: Fundamentals, App Structure, and Knowledge Review | 01 Sep 2026 | 00:25:58 | |
Android Security & APK Architecture — Advanced Study Template1. Android Security ModelAndroid security is built around several fundamental objectives: - Protecting user and application data - Isolating applications from one another - Controlling privileges - Providing secure inter-process communication - Restricting unauthorized access to system resources The architecture combines traditional Linux security mechanisms with Android-specific controls.2. Linux FoundationAndroid is built on the Linux kernel, which provides fundamental capabilities such as: - Process management - Memory management - Networking - Device drivers - Filesystem access - User and group permissions Android builds additional security mechanisms on top of these Linux primitives.3. Android Application SandboxOne of Android's most important security mechanisms is the application sandbox.Applications normally execute under distinct Linux identities, which limits their ability to interact with other applications.Conceptually:Android System │ ┌────┼────┐ │ │ │ App A App B App C │ │ │ UID A UID B UID C │ │ │ Sandbox Sandbox Sandbox This isolation helps prevent a compromised application from automatically accessing another application's private data.Security principleCompromise of one application should not automatically imply compromise of every application on the device.4. SELinuxAndroid also uses SELinux (Security-Enhanced Linux) to provide Mandatory Access Control (MAC).This adds another layer beyond traditional Linux discretionary permissions.Conceptually:Application Request ↓ Linux Permissions ↓ SELinux Policy ↓ Allow / Deny Even if a process has certain Linux-level permissions, SELinux policies can impose additional restrictions on what that process is allowed to do.5. Android Application Package — APKAndroid applications are distributed primarily as APK files.An APK is an archive containing the application's: - Compiled code - Resources - Manifest - Assets - Configuration - Supporting components A simplified structure looks like:Application.apk │ ├── AndroidManifest.xml ├── classes.dex ├── resources.arsc ├── res/ ├── assets/ ├── lib/ └── META-INF/ For malware analysts, understanding this structure is fundamental.6. AndroidManifest.xmlThe Android Manifest is one of the most important files during APK analysis.It can contain information about: - Package identity - Application components - Permissions - Services - Activities - Broadcast receivers - Content providers - Intent filters - Application configuration Malware-analysis perspectiveThe manifest is often an excellent first point of investigation.For example, suspicious permissions or unexpected exported components can provide early indicators worth investigating further.7. ActivitiesAn Activity generally represents a user-facing application component.Examples include: - Login screens - Settings screens - Main application interfaces - Forms Activities define how users interact with the application.Security relevanceAn analyst may examine: - Exported activities - Intent filters - Deep links - Input handling - Inter-component communication 8. ServicesServices perform operations that may continue without a conventional foreground UI.They can be used for tasks such as: - Background processing - Network operations - Synchronization - Long-running application tasks Malware relevanceMalware may attempt to use background components to maintain functionality while minimizing visible user interaction.9. IntentsIntents are messaging objects used to request actions or communicate between Android components.They can facilitate communication between: - Activities - Services - Broadcast receivers - Other applications Conceptually:Component A │ │ Intent ▼ Component B Security relevancePoorly protected component interfaces can sometimes create security issues involving unauthorized interaction or data exposure.10. Broadcast ReceiversBroadcast Receivers respond to broadcast messages generated by the system or applications.They can be used to react to events such as: - System state changes - Application events - Connectivity-related events - Other broadcasts From a malware-analysis perspective, receivers can be interesting because they may reveal how an application responds to specific system events.11. DEX FilesAndroid applications contain compiled bytecode in DEX (Dalvik Executable) format.The primary file is commonly:classes.dex Additional DEX files may appear when an application contains enough code to require multiple files.The code is executed through Android's runtime environment.12. Dalvik vs. ARTHistorically, Android applications ran using the Dalvik Virtual Machine (DVM).Modern Android uses the Android Runtime (ART).Older Android ↓ Dalvik ↓ classes.dex Modern Android ↓ ART ↓ classes.dex Understanding this distinction is important when studying older Android malware samples versus modern applications.13. Content ProvidersContent Providers provide a standardized mechanism for managing and sharing structured data between applications and system components.Conceptually:Application A │ ▼ Content Provider │ ▼ Protected Data │ ▼ Application B Access is controlled through Android's permission and component security mechanisms.Security relevanceContent Providers can become important during security analysis because improperly exposed providers may unintentionally reveal sensitive information.14. Binder IPCBinder is one of the fundamental communication mechanisms in Android.It provides high-performance Inter-Process Communication (IPC) between processes.Conceptually:Process A │ │ Binder IPC ▼ Android System Service │ ▼ Process B Binder is heavily integrated into Android's architecture and is used by applications and system services to communicate.Why it mattersWithout a secure and efficient IPC mechanism, Android's application isolation model would be considerably more difficult to implement.15. APK Static Analysis WorkflowA basic APK investigation can begin by extracting the archive.For example:unzip application.apk -d application/ You can then examine the resulting structure:application/ ├── AndroidManifest.xml ├── classes.dex ├── resources.arsc ├── res/ ├── assets/ └── lib/ The analyst can then investigate the individual components.Typical initial workflowAPK ↓ Extract ↓ Manifest Analysis ↓ Identify Components ↓ Inspect Permissions ↓ Analyze DEX ↓ Inspect Resources ↓ Continue with Static/Dynamic Analysis 🔓 16. Android RootingRooting refers to obtaining elevated or superuser-level privileges on an Android device.Depending on the technique, this may involve exploiting vulnerabilities or modifying the software environment.Conceptually:Normal Application ↓ Restricted Privileges ↓ Android Security Boundaries X Rooted Research Device ↓ Elevated Privileges ↓ Expanded System Visibility 17. Why Root Access Matters for Malware AnalysisA controlled rooted research device can provide researchers with greater visibility into: - Application data - Filesystem contents - Running processes - System services - Runtime behavior - Network activity - Protected application directories This makes rooting particularly useful for dynamic malware analysis.However, rooting also reduces some of the protections normally provided by Android, so it should be performed only in an isolated research environment.18. Android Security ArchitectureThe major security mechanisms can be viewed together: Android │ ┌───────┴────────┐ │ │ Linux Android Kernel Security │ │ Permissions Sandbox │ │ └───────┬────────┘ │ SELinux │ ▼ Application Isolation │ ▼ Secure IPC / Binder 19. iOS vs. AndroidSecurity ConceptiOSAndroidApplication isolationSandboxSandboxLow-level foundationXNU / DarwinLinuxMandatory access controlsMultiple platform mechanismsSELinuxApplication packageIPAAPKRuntimeNative / platform runtimesARTIPCPlatform-specific mechanismsBinderPrivilege modificationJailbreakingRootingApplication codeNative binariesDEX + native codeSecurity researchOften requires jailbreakOften benefits from root20. Key Malware-Analysis ArtifactsWhen analyzing an Android APK, pay particular attention to:AndroidManifest.xmlLook for: - Permissions - Exported components - Services - Receivers - Providers - Intent filters classes.dexLook for: - Application logic - Suspicious APIs - Network functionality - Credential handling - Obfuscation - Embedded URLs or domains res/May contain: - UI resources - XML configuration - Images - Other application resources assets/May contain: - Configuration files - Embedded data - Scripts - Additional resources lib/May contain native libraries such as:.so These can require separate native-code analysis.🎯 Key Takeaways - Android is fundamentally built on the Linux kernel. You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 42 - Mobile Malware Analysis Fundamentals | Episode 4: iOS Security and Android Frameworks | 31 Aug 2026 | 00:21:34 | |
A comprehensive technical exploration of the foundational architectures and security models of iOS and Android, providing the essential knowledge required for mobile security analysis and malware research.The journey begins with iOS security, examining its three major pillars: system security, data security, and application security. You will learn how iOS applications operate within the Cocoa Touch layer and how the sandbox model isolates applications to protect system resources and user data. The episode also explores jailbreaking, including tethered, semi-untethered, and untethered approaches, and explains how vulnerabilities in hardware, the boot chain, or the kernel can be leveraged to bypass Apple’s security restrictions.The focus then shifts to Android, tracing its evolution from its early development in Palo Alto through its acquisition by Google and the creation of the Open Handset Alliance. The episode breaks down Android's architecture from both a system and platform perspective.On the system architecture side, we examine the interaction between the Linux Kernel, Hardware Abstraction Layer (HAL), and Binder IPC, which enables efficient communication between Android processes and system components.On the platform architecture side, the episode explores the Android Runtime (ART) and its predecessor, the Dalvik Virtual Machine (DVM), which provide the execution environment for applications. We also examine the Java API Framework, which exposes essential system services and APIs that developers use to build Android applications.By the end of this episode, you will have a solid understanding of how iOS and Android implement isolation, privilege boundaries, application execution, and hardware interaction—providing a strong foundation for deeper mobile application security and malware analysis. You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 42 - Mobile Malware Analysis Fundamentals | Episode 3: iOS Application Architecture and Jailbreaking Fundamentals | 30 Aug 2026 | 00:15:09 | |
iOS Application Architecture & Jailbreaking — Advanced Study Template1. iOS Application ArchitectureiOS applications are primarily developed using:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 42 - Mobile Malware Analysis Fundamentals | Episode 2: iOS Architecture & Security | 29 Aug 2026 | 00:24:33 | |
iOS Architecture & Security — Study Template1. iOS Architecture OverviewThe iOS platform can be understood as a layered architecture in which higher-level frameworks rely on increasingly fundamental system services.┌─────────────────────────────┐ │ Cocoa Touch │ ├─────────────────────────────┤ │ Core Media │ ├─────────────────────────────┤ │ Core Services │ ├─────────────────────────────┤ │ Core OS │ └─────────────────────────────┘ ↓ Hardware 2. Cocoa TouchCocoa Touch represents the upper application-facing layer of the architecture.It provides functionality related to:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 42 - Mobile Malware Analysis Fundamentals | Episode 1: Threat Landscape, Device Architecture, and Risk Analysis | 28 Aug 2026 | 00:21:14 | |
Mobile Malware Analysis — Foundational Study Template1. Course ObjectiveThis module introduces the fundamentals of mobile malware analysis for both:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 41 - Analyzing Attacks for Incident Handlers | Episode 4: Live Memory Forensics, VM Troubleshooting, and Malware Analysis | 27 Aug 2026 | 00:19:55 | |
🧠 Live Memory Forensics Lab — Mandiant Redline (Full Workflow)🎯 Lab ObjectivePerform a real-world memory forensic investigation on an infected Windows VM using Mandiant Redline, covering:Infection → Data Collection → Transfer → Analysis → IOC Identification🧪 Lab OverviewEnvironment:
✅ ALWAYS transfer to a clean analysis system🔧 Part 1: Operational Reality & Troubleshooting💣 Step 1: Execute Malware (Inside VM Only)
✔ Allows file transfer2. Smart Data ReductionInstead of copying full audit:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 41 - Analyzing Attacks for Incident Handlers | Episode 3: Live Memory Forensics and Malware Analysis with Mandiant Redline | 26 Aug 2026 | 00:18:31 | |
🧠 Live Memory Forensics with Mandiant Redline — Study Template🔐 Core ConceptMandiant Redline is not just a memory capture tool — it performs a:Memory audit for rapid threat detection and triageUnlike basic tools:
you are simulating an attack environment safely⚠️ Safety Principles🚨 Treat malware like:Active threat, not a fileMandatory precautions:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 41 - Analyzing Attacks for Incident Handlers | Episode 2: Utilizing FTK Imager and Redline for Incident Handlers | 25 Aug 2026 | 00:22:30 | |
🧠 Memory Analysis & Incident Response — Advanced Template🔐 Core ConceptMemory analysis is a high-impact forensic technique used during incident response to uncover evidence that is not available through disk or antivirus analysis.Key idea: Critical attack artifacts often exist only in volatile memory⚡ Why Memory Analysis Is CriticalTraditional methods may fail:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 41 - Analyzing Attacks for Incident Handlers | Episode 1: Volatile Evidence, Forensic Tools, and Investigation Procedures | 24 Aug 2026 | 00:20:29 | |
🧠 Memory Analysis (RAM Forensics) — Study Template🔐 Core ConceptMemory analysis is a critical part of the incident response process, used to detect threats that do not leave artifacts on disk.Key idea: Some attacks exist only in memory⚡ Why Memory Forensics MattersModern threats bypass traditional disk-based detection:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 43: Mastering File Uploads and Reverse Image Search | 23 Aug 2026 | 00:14:03 | |
This episode is about a very specific but powerful capability in scraping:automating file uploads as part of a web interaction workflowIt sits at the intersection of browser automation + data extraction pipelines.📤 Core IdeaSome websites don’t just serve data — they require you to:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 42: Web Authentication and Automated Form Input Submission | 22 Aug 2026 | 00:20:20 | |
This episode is essentially about turning “login-protected websites” into programmable sessions and then controlling full form workflows like a real user.🔐 Core IdeaModern scraping stops being “download HTML” and becomes:“Authenticate → maintain session → interact → extract”This is the foundation of scraping anything behind a login wall.🍪 1. Session Cookies (Staying Logged In)🧠 What they are:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 41: Mastering GET and POST Form Submissions | 21 Aug 2026 | 00:11:32 | |
This episode is essentially teaching you how to reverse-engineer web forms into programmatic HTTP requests, which is one of the most important skills in practical scraping.🧭 Core IdeaWeb forms are just structured HTTP requests.So instead of thinking:“I’m filling a form”You should think:“I’m constructing a GET or POST request that mimics what the browser sends”🌐 1. GET Forms (Simple & Scrape-Friendly)🧠 How they work:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 40: Introduction to Advanced Web Scraping: Tools and Tactics | 20 Aug 2026 | 00:21:32 | |
This episode is essentially about moving from “simple scraping” → “interactive web automation + session-aware extraction”, where websites behave more like applications than static pages.🧠 Core Idea of the CourseStandard scraping fails when websites:
but “web application interaction engineering”🔥 Final TakeawayThe major shift in this episode is:From passive scraping:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 39: Overcoming Challenges and Optimizing Performance | 19 Aug 2026 | 00:23:44 | |
This module is essentially the “real world survival guide” for web scraping — it moves away from pure tooling and focuses on what actually breaks scrapers in production and how to behave responsibly while scraping at scale.🚧 1. Real-World Scraping ProblemsModern websites actively defend themselves against automation, so scraping is rarely “just code and go”.🚫 Bot RestrictionsWebsites may block automated traffic using:
Because bad scraped data can:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 38: Scraping Dynamic Premier League Stats and News with Selenium and BeautifulSoup | 18 Aug 2026 | 00:20:34 | |
This episode is a practical end-to-end example of the Selenium + Beautiful Soup hybrid scraping pattern, applied to a real sports data use case (Premier League player pages).⚽ Goal of the ProjectScrape structured data about Wayne Rooney from a dynamic football website, including:
Beautiful Soup = data extraction engineThey are not competing tools — they are complementary.📌 Why this approach scalesThe episode highlights a key idea:Player-agnostic designOnce built, the same script can:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 37: Integrating Selenium and Beautiful Soup | 17 Aug 2026 | 00:18:07 | |
This episode is basically about building a hybrid scraping pipeline where each tool does what it’s best at instead of forcing one tool to do everything.🧩 Core Idea: Split the Problem in TwoModern scraping usually has two phases:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 36: Comprehensive Element Locating and Advanced Webpage Navigation | 16 Aug 2026 | 00:23:49 | |
This tutorial series is basically showing how Selenium moves from “clicking elements” into real-world browser automation, where pages are messy, slow, and full of UI traps.🧭 1. Core Setup + Basic NavigationEverything starts with controlling the browser:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 35: Locating Dynamic Elements with Selenium and Python | 15 Aug 2026 | 00:20:22 | |
This module is basically about the core skill in Selenium automation: reliably finding the right element on a page that keeps changing.🧩 What “locating elements” really meansIn Selenium, everything you interact with is a web element, such as:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 34: Architecture, Setup, and Basic Web Automation | 14 Aug 2026 | 00:19:51 | |
This episode focuses on how Selenium WebDriver actually works under the hood, and then walks into the practical setup and first automation steps.🧠 Selenium WebDriver ArchitectureSelenium WebDriver is designed to control browsers as realistically as possible, which is why it uses a multi-layer architecture instead of direct code-to-browser control.🧩 1. Language BindingsThese are client libraries that let you write automation scripts in different languages:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 33: Foundations of Scraping Dynamic Webpages with Python and Selenium | 13 Aug 2026 | 00:20:06 | |
This episode is essentially a setup guide for moving from simple HTTP-based scraping to full browser automation using Selenium, especially for websites where content is rendered or modified by JavaScript.🌐 Web Scraping vs Dynamic Web Pages🧾 What “web scraping” means hereWeb scraping is framed as:Converting web page content into structured data for analysisBut the key challenge is that not all content is immediately visible in HTML.🧱 Static vs Dynamic Content📄 Static content
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 32: Native Data Storage and Implementation | 12 Aug 2026 | 00:17:07 | |
This episode is about removing custom storage code from your Scrapy project and replacing it with Scrapy’s built-in Feed Export system, which turns scraping into a fully configurable data export pipeline.📤 Scrapy Feed Exporters (Automated Data Storage)🧠 Core IdeaInstead of manually writing data to files or databases, Scrapy can automatically export scraped items using:Feed Exporters = built-in serialization + storage systemThey handle:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 31: From Item Loaders to Pipelines | 11 Aug 2026 | 00:23:40 | |
This episode is essentially about turning Scrapy from “just a scraper” into a full data processing system, where extraction, cleaning, validation, and storage are all structured and automated.🕷️ Scrapy Data Population & Processing Pipeline1. 📦 Item Loaders (Structured Data Population)Item Loaders are the layer between raw scraped HTML and structured Scrapy Items.Instead of manually assigning fields, you feed data through controlled methods:🔹 Core methods
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 30: Controlling URL Paths and Processing Scraped Data | 10 Aug 2026 | 00:20:11 | |
This episode is really about controlling Scrapy’s crawl scope and shaping data as it moves through the pipeline, so you’re not just collecting data—you’re actively engineering what gets collected and how it looks.🕷️ Scrapy Crawl Control & Data Processing Pipeline1. 🎯 URL Path Control (Allow / Deny Rules)In Scrapy, crawl behavior is tightly controlled using rule-based filtering, often inside spiders like CrawlSpider.🔹 Allow rules
You control how messy web data becomes structured business intelligence.📌 Mental ModelComponentPurposeAllow / Deny rulesControl crawl scopeInput ProcessorsClean raw extractionOutput ProcessorsFinal formattingMapComposeTransform listsJoinMerge textTakeFirstReduce noise You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 29: From Feed and Sitemap Spiders to CrawlSpider Demos | 09 Aug 2026 | 00:19:25 | |
This episode is really about choosing between manual control and automated crawling logic inside Scrapy, and understanding how specialized spider classes change your level of control.Here’s the structured breakdown:🕷️ Scrapy Spider Types — Practical Comparison & Feed Spiders1. Feed-Based Spiders (Structured Data Sources)These spiders are not designed for HTML pages — they target pre-structured data formats.📄 XMLFeedSpider ScrapyPurpose:Extract structured data from XML feeds.Key concept:
CrawlSpider = autonomous exploration📌 Mental ModelTypeStrengthWeaknessscrapy.SpiderFull controlMore codeCrawlSpiderAutomationLess fine-grained controlSitemapSpiderFast discoveryDepends on sitemapXML/CSV SpidersStructured feedsLimited flexibility You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 28: Base and Generic Crawling Classes | 08 Aug 2026 | 00:13:08 | |
This episode is essentially about how Scrapy structures crawling logic through different spider types, and when to use each one depending on the scale and structure of the target site.Here’s the clean, structured breakdown:🕷️ Scrapy Spiders — Architecture & Types1. What a Spider Actually IsA Scrapy spider is a Python class that defines:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 27: Beautiful Soup Parsing and Scrapy Project Architecture | 07 Aug 2026 | 00:19:06 | |
You’ve essentially built a full end-to-end curriculum covering web scraping → parsing → dynamic rendering → large-scale crawling → security context. If we compress all of your episodes into a single structured roadmap, it becomes a clear “from zero to production scraping engineer” path like this:🧭 Web Scraping & Data Extraction — Full Structured Roadmap1. Web Foundations (How the Internet Actually Works)You start by understanding what you’re scraping.
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 26: Framework Overview and Core Architecture | 06 Aug 2026 | 00:22:01 | |
In this lesson, you’ll learn about: what makes Scrapy a framework (not just a library), how its asynchronous engine works, and how its core components cooperate to deliver fast, scalable web scraping1. Library vs Framework (Core Concept)🔹 Who Controls the Flow?🔹 Key Difference
Scrapy is a framework because it controls execution (Inversion of Control)2. Asynchronous Power (Why Scrapy is Fast)🔹 Event-Driven Architecture🔹 What Makes It Powerful
Scrapy doesn’t scrape pages one-by-one—it handles many at once3. Scrapy Architecture (Big Picture)🔹 How Components Interact4. Core Components Explained🔹 1. Engine
Each component has one responsibility → modular & scalable5. Request Flow (Step-by-Step)
Speed without control = getting blocked7. Why Scrapy is Production-Ready
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 25: Core Concepts and Legal Guidelines | 05 Aug 2026 | 00:17:50 | |
In this lesson, you’ll learn about: the foundations of web scraping with Python and Scrapy, the difference between crawling and scraping, and the legal boundaries you must understand before building any data extraction system1. Technical Prerequisites🔹 What You Need to Know FirstBefore diving into scraping, you should be comfortable with:
Scraping is not just coding—it’s understanding how the web is structured2. Crawling vs Scraping🔹 Understanding the Core Difference🔹 Crawling
Crawling = exploring Scraping = extracting3. Legal & Ethical Considerations🔹 The Risk Landscape🔹 What Can Go Wrong
Just because you can scrape doesn’t mean you should4. Terms of Service (ToS) MatterEvery website defines rules in its Terms of Service:
Intent does not override legality6. Safe Scraping Practices🔹 How to Stay Compliant
If it’s not your data → get permission first7. Mental ModelThink of scraping as:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 24: Mastering Advanced Operations, Parsers, and Encodings in Beautiful Soup | 04 Aug 2026 | 00:20:59 | |
In this lesson, you’ll learn about: optimizing Beautiful Soup for speed and memory, handling encodings safely, managing tags precisely, and controlling how your final HTML output is generated1. Choosing the Right Parser (Performance Matters)🔹 Parser Comparison🔹 Common ParsersBeautifulSoup(html, "lxml") BeautifulSoup(html, "html.parser") BeautifulSoup(html, "html5lib") 🔹 Differences
Use lxml for speed, html5lib for accuracy2. Selective Parsing with SoupStrainer🔹 Parse Only What You Need🔹 Examplefrom bs4 import SoupStrainer only_links = SoupStrainer("a") soup = BeautifulSoup(html, "lxml", parse_only=only_links) 👉 Key Insight Avoid parsing the whole document → save memory + increase speed3. Handling Encodings & Unicode🔹 Clean Text Across Languages🔹 Automatic Handling
Wrong encoding = broken text (especially non-English content)4. Tag Comparison & Copying🔹 Understanding Equality🔹 Structural vs Memory Equalitytag1 == tag2 # same structure tag1 is tag2 # same object in memory 🔹 Copying Tagsimport copy new_tag = copy.copy(tag) 👉 Key Insight Copy tags when modifying → avoid breaking original data5. Output Formatting Control🔹 Converting Back to HTML🔹 Basic Outputstr(soup) 🔹 Custom Formatterdef upper(text): return text.upper() soup.prettify(formatter=upper) 🔹 Formatter Options
You control how scraped data is presented and transformed6. Mental ModelThink of advanced scraping optimization as:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 23: Mastering HTML Parse Tree Modification with Beautiful Soup | 03 Aug 2026 | 00:19:41 | |
In this lesson, you’ll learn about: how to edit, expand, and restructure HTML using Beautiful Soup—turning a static document into a fully dynamic, modifiable data structure1. Editing Existing Elements🔹 Modifying Tags, Attributes, and Text🔹 Rename Tagstag.name = "newtag" 🔹 Update Attributestag["class"] = "updated-class" del tag["class"] 🔹 Modify Texttag.string = "Updated text" 👉 Key Insight Every HTML element is mutable—you can fully rewrite it2. Adding New Content🔹 Expanding the Tree🔹 Append & Extendtag.append("New text") tag.extend(["More text", "Another"]) 🔹 Insert at Positiontag.insert(1, "Inserted text") 🔹 Insert Around Elementstag.insert_before("Before") tag.insert_after("After") 👉 Key Insight You control where new content appears (inside or beside elements)3. Creating New Elements🔹 Building from Scratch🔹 Create New Tagnew_tag = soup.new_tag("div") 🔹 Create Text Nodefrom bs4 import NavigableString text = NavigableString("Hello") 🔹 Create Commentfrom bs4 import Comment comment = Comment("This is a comment") 👉 Key Insight You’re not limited to existing HTML—you can generate entirely new structures4. Removing Elements🔹 Deleting vs Extracting🔹 Extract (Keep in Memory)removed = tag.extract() 🔹 Decompose (Destroy Completely)tag.decompose() 🔹 Clear Content Onlytag.clear() 👉 Key Insight
You can reshape the entire hierarchy, not just edit nodes6. Saving the Modified HTMLwith open("output.html", "w") as f: f.write(str(soup)) 👉 Key Insight After modification, your parsed tree becomes a new document7. Mental ModelThink of Beautiful Soup as:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 22: Mastering Tree Traversal, CSS Selectors, and XPath | 02 Aug 2026 | 00:19:25 | |
In this lesson, you’ll learn about: precision data extraction using advanced tree traversal, powerful CSS selectors, and XPath navigation for handling even the most complex web structures1. Advanced Tree Traversal (Beyond Basics)🔹 Navigating the HTML “Family Tree”Instead of just searching, you move through the structure intelligently.🔹 Key Navigation Methodstag.find_parent() tag.find_next_sibling() tag.find_next() tag.find_all_next() 🔹 What Each Does
Traversal lets you start anywhere and still reach your target2. CSS Selectors (Soup Sieve Power)🔹 Modern, Flexible SelectionBeautiful Soup supports CSS selectors via Soup Sieve.🔹 Basic Syntaxsoup.select("div.classname") soup.select("#main") soup.select("ul > li") 🔹 Selector Types
CSS selectors are often cleaner and more readable than manual navigation3. Attribute Matching in CSS🔹 Targeting Dynamic Datasoup.select('a[href^="https"]') soup.select('img[src$=".png"]') soup.select('a[href*="example"]') 🔹 Matching Types
Perfect for scraping dynamic or partially known values4. XPath Navigation (Precision Mode)🔹 Path-Based TargetingXPath works like navigating folders:🔹 Examples# Absolute path /html/body/div[1]/a # Global search //a # Attribute filtering //a[@href="example.com"] # Indexing (//a)[1] 🔹 Key Features
XPath is the most precise but strict method5. CSS vs XPath vs TraversalMethodStrengthBest UseTraversalFlexibleDynamic navigationCSS SelectorsReadableMost scraping tasksXPathPreciseComplex structures6. Combining Techniques🔹 Real Power Comes from MixingExample workflow:
No single method is enough for all cases7. Mental ModelThink like this:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 21: Mastering XML Parsing and Advanced Search with Beautiful Soup and XPath | 01 Aug 2026 | 00:20:23 | |
In this lesson, you’ll learn about: how XML and XPath enable precise data navigation, and how to use advanced Beautiful Soup techniques for highly targeted extraction from complex documents1. XML as a Data Structure🔹 Why XML Matters🔹 Key Characteristics
XML is ideal for scraping because its structure is consistent and machine-friendly2. Parsing XML with LXML🔹 Turning XML into a Treefrom bs4 import BeautifulSoup soup = BeautifulSoup(xml_data, "xml") 🔹 Why Use LXML
XPath gives you surgical precision in large documents4. Limiting Search Results🔹 Control Output Sizesoup.find_all("item", limit=5)
Restricting depth = faster + more accurate queries6. Handling Custom Attributes🔹 Attributes with Special Namessoup.find_all(attrs={"extra-info": "value"}) 🔹 Why This Matters
attrs unlocks full flexibility in attribute filtering7. Text-Based Extraction🔹 Targeting Content Directlysoup.find_all(string="Example Text") 🔹 Pattern Matchingimport re soup.find_all(string=re.compile("Example")) 👉 Key Insight You can search by content, not just structure8. Custom Function Filters🔹 Complex Logic Extractiondef single_text_child(tag): return tag.string is not None soup.find_all(single_text_child) 👉 Why This Is Powerful
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 20: XPath Fundamentals and Advanced Beautiful Soup Searching | 30 Jul 2026 | 00:18:21 | |
In this lesson, you’ll learn about: how Beautiful Soup works with both HTML and XML, how XPath enhances tree navigation, and how to perform precise, high-performance searches using advanced filtering techniques1. HTML vs XML in Web Scraping🔹 Understanding the Difference🔹 Key Concepts
XML is predictable → HTML is not2. Parsing XML with Beautiful Soup🔹 Using LXML Parserfrom bs4 import BeautifulSoup soup = BeautifulSoup(xml_data, "xml") 🔹 Why LXML?
XPath = precision targeting in complex trees4. Limiting Search Results🔹 Controlling Output Sizesoup.find_all("a", limit=3)
Useful for performance + sampling data5. Non-Recursive Searches🔹 Restricting Scopesoup.find_all("div", recursive=False)
Improves speed and accuracy in large documents6. Attribute-Based Filtering🔹 Using attrs Dictionarysoup.find_all(attrs={"data-id": "123"}) 🔹 Why Use attrs?
attrs gives full control over attribute filtering7. Text-Based Searching🔹 Finding Specific Textsoup.find_all(string="Hello World") 🔹 Match by Patternimport re soup.find_all(string=re.compile("Hello")) 👉 Key Insight You can target content—not just tags8. Custom Function Filters🔹 Advanced Logicdef only_text(tag): return tag.string is not None soup.find_all(only_text) 👉 Key Insight Custom filters = maximum flexibility9. Real-World Precision Extraction🔹 Combining TechniquesYou can combine:
👉 limiting scope for performance 👉 combining filters for precisionThat’s what transforms scraping into a high-performance data extraction system. You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 19: Tree Navigation, Advanced Filtering, and Link Extraction | 29 Jul 2026 | 00:22:37 | |
In this lesson, you’ll learn about: advanced Beautiful Soup navigation, powerful filtering techniques, and how to extract and normalize real-world data like links from complex websites1. Advanced Tree Navigation🔹 Multi-Directional MovementBeautiful Soup allows you to move through HTML in three different dimensions:🔹 Vertical Navigationlist(tag.children) list(tag.descendants) tag.parent tag.parents
.children is shallow — .descendants is deep traversal🔹 Sideways Navigation (Siblings)tag.next_sibling tag.previous_sibling
next_element ≠ next_sibling It follows document order, not hierarchy2. Advanced Filtering Techniques🔹 Precision Data Targeting3. Filtering with Regular Expressionsimport re soup.find_all(re.compile("^p"))
You can filter by value OR existence of attributes5. Custom Function Filters (Power Feature)def has_src_no_href(tag): return tag.has_attr("src") and not tag.has_attr("href") soup.find_all(has_src_no_href) 👉 Key Insight Custom functions = unlimited filtering logic6. Real-World Example: Link Extraction🔹 Extracting Links from a Page🔹 Extract All Linkslinks = soup.find_all("a") for link in links: print(link.get("href")) 7. Relative vs Absolute URLsTypeExampleRelative/aboutAbsolutehttps://site.com/about🔹 Convert to Absolutebase = "https://example.com" full_url = base + relative_url 👉 Key Insight Most websites use relative links → you must normalize them8. Extracting All Resource Links# Anchor links soup.find_all("a") # Stylesheets / metadata soup.find_all("link") # Images soup.find_all("img") 👉 Key Insight Data isn’t only in tags — it's everywhere9. Mental ModelThink of advanced scraping as:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 18: Mastering HTML Parse Tree Navigation and Element Extraction with Beautiful Soup | 28 Jul 2026 | 00:22:36 | |
In this lesson, you’ll learn about: how Beautiful Soup builds a navigable HTML tree, how to search and filter elements, and how to move through the structure to extract clean, structured data1. Parsing HTML with Beautiful Soup🔹 From Raw HTML → Structured Tree🔹 Basic Workflowimport requests from bs4 import BeautifulSoup html = requests.get("https://example.com").text soup = BeautifulSoup(html, "lxml") 🔹 Visualizing the Structureprint(soup.prettify()) 👉 Key Insight Beautiful Soup turns messy HTML into a clean tree structure2. Core Elements of the Parse Tree🔹 The 4 Building Blocks🔹 Key Components
Everything in HTML becomes an object you can navigate3. Searching & Filtering Elements🔹 Finding Data Efficiently🔹 Common Methodssoup.title soup.find("div") soup.find_all("a") 🔹 Using Regeximport re soup.find_all("a", href=re.compile("example")) 👉 Key Insight find_all() is your main tool for scalable extraction4. Navigating the HTML Tree🔹 Directional Navigation5. Moving Down the Treesoup.body.contentsAccess childrenIterate through nested elements6. Moving Up the Treetag.parentMove to parentAccess ancestors7. Moving Sidewaystag.next_sibling tag.previous_siblingAccess elements at same level👉 Key Insight Scraping = navigating the tree in the right direction8. Extracting Clean Data🔹 Practical Extraction🔹 Example: Extract Table Datafor row in soup.find_all("tr"): cols = row.find_all("td") data = [col.text.strip() for col in cols] 👉 Key Insight .text + .strip() = clean usable data9. Mental ModelThink of BeautifulSoup as:🌳 A tree🔍 find() = search tool🧭 navigation = movement (up/down/sideways)Final TakeawayBeautiful Soup transforms web scraping from:❌ guessing text patterns ➡️ into ✅ navigating structured dataOnce you understand:Tree structureSearch methodsNavigation directions👉 You gain full control over extracting any data from any HTML page You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 17: Mastering Requests, Regex, and Beautiful Soup | 27 Jul 2026 | 00:21:19 | |
In this lesson, you’ll learn about: how Python retrieves web pages, how regex is used for pattern-based extraction, and how BeautifulSoup improves scraping by understanding HTML structure instead of treating it as plain text1. Fetching Web Content in Python🔹 HTTP Request FlowWeb scraping always starts with getting the page content.🔹 Libraries Used
Without proper headers, many sites will reject your scraper2. Regular Expressions (Regex Basics)🔹 Pattern Matching ConceptRegex treats web data as raw text patterns.3. Core Regex FunctionsFunctionBehaviormatch()checks start onlysearch()finds first match anywherefindall()returns all matches🔹 Special SymbolsSymbolMeaning\ddigits\wletters + numbers\swhitespace🔹 Example Patternimport re re.findall(r"\d+", "Price is 123 dollars") 👉 Key Insight Regex is powerful but fragile for HTML4. Advanced Regex Techniques🔹 Ranges & Groups
Parser choice affects speed vs accuracy8. Regex vs BeautifulSoupFeatureRegexBeautifulSoupStructure aware❌✔️Speed✔️MediumReliability❌✔️9. Mental ModelThink of scraping like:
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 16: Mastering Data Extraction with Beautiful Soup | 26 Jul 2026 | 00:19:11 | |
In this lesson, you’ll learn about: how web scraping works end-to-end, why fetching and parsing are the two core stages, and how different tools like Regex, BeautifulSoup, and Scrapy compare in real-world data extraction1. What is Web Scraping?🔹 Core IdeaWeb scraping = automated data extraction from websitesInstead of manually copying data, a program:
HTML is not flat text—it’s structured data4. BeautifulSoup (Structure-Aware Parsing)🔹 Why It Works BetterBeautifulSoup:
If data appears after page load → you need a browser engine7. Advanced Tools Overview🔹 Scrapy (Industrial Tool)
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 15: Mastering Items, Loaders, and Processing Pipelines | 25 Jul 2026 | 00:24:36 | |
In this lesson, you’ll learn about: how Scrapy structures scraped data using Items, how Item Loaders simplify extraction and cleaning, and how Pipelines transform raw scraped output into usable datasets1. Scrapy Items (Structured Data Containers)🔹 What Are Items?Scrapy Items are structured containers for scraped data.Think of them as:a strongly-typed dictionary for scraped content🔹 Example Structureclass StockItem(scrapy.Item): name = scrapy.Field() symbol = scrapy.Field() price = scrapy.Field() 👉 Key Insight Items force structure into messy web data2. Using Items in Scrapy Shell🔹 Manual Assignment FlowYou can:
Scrapy Shell helps you validate structure before automation3. Project-Based Item Integration🔹 Moving into Real SpidersItems are defined in:items.py Then used inside spiders:yield StockItem( name=name, symbol=symbol, price=price ) 👉 Key Insight Items enforce consistency across your whole scraping system4. Exporting Data (CSV / JSON)🔹 Built-in Export Systemscrapy crawl stocks -o data.csv 🔹 Output Formats
Scrapy can export structured data without extra libraries5. Item Loaders (Automation Layer)🔹 Why They ExistItem Loaders reduce repetitive code and handle transformation automatically.🔹 Example Usageloader.add_xpath("price", "//span/text()") 6. Input & Output Processors🔹 MapCompose (Input Cleaning)from scrapy.loader.processors import MapCompose Used to:
Processors turn raw extraction into clean structured data automatically7. Pipelines (Post-Processing System)🔹 What Happens After ScrapingPipelines run after data extraction🔹 Example Pipelineclass PriceFilterPipeline: def process_item(self, item, spider): if float(item["price"]) > 100: item["high_value"] = True return item 👉 Key Insight Pipelines are where business logic lives8. Enabling PipelinesIn settings.py:ITEM_PIPELINES = { "myproject.pipelines.PriceFilterPipeline": 300, } Lower number = higher priority9. Full Data Flow Model
👉 and start engineering data systems You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 14: Building and Automating Custom Spiders with the Scrapy Framework | 24 Jul 2026 | 00:22:07 | |
In this lesson, you’ll learn about: Scrapy’s full architecture, how to build real spiders from scratch, and how to move from simple extraction to production-ready crawling with structured data pipelines1. Scrapy Architecture (How Everything Works)🔹 Core System FlowScrapy is built around a central engine that coordinates everything.🔹 Main ComponentsComponentRoleEngineControls flowSchedulerQueues URLsDownloaderFetches pagesSpiderExtracts dataPipelineProcesses & stores data👉 Key Insight You don’t control HTTP manually—Scrapy does it for you2. Project Setup & Spider Creation🔹 Initialize a Projectscrapy startproject myproject 🔹 Generate a Spiderscrapy genspider stocks yahoo.com 🔹 Project Structuremyproject/ ├── spiders/ ├── items.py ├── pipelines.py ├── settings.py 👉 Key Insight Each file has a strict responsibility → clean separation of logic3. Extracting Real Data (Yahoo Finance Example)🔹 Target Use CaseWe extract:
Spiders are just Python classes with extraction rules4. Running the Spider🔹 Execution Commandscrapy crawl stocks 🔹 Output Options
Scrapy supports structured output without extra code5. Item Loaders (Cleaner Code)🔹 Why They MatterItem Loaders help:
You separate extraction from transformation6. Pipelines (Final Processing Layer)🔹 What Pipelines Do
Pipelines act like a data factory assembly line7. Full Data Flow
You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
| Course 40 - Web Scraping with Python | Episode 13: Mastering Scrapy Shell, CSS, and XPath Selectors | 23 Jul 2026 | 00:20:39 | |
In this lesson, you’ll learn about: how to use Scrapy Shell for interactive crawling, how CSS selectors work for fast extraction, and how XPath enables advanced and flexible data targeting1. What is Scrapy Shell?🔹 Interactive Prototyping ToolScrapy Shell is a live testing environment where you can:
You can test everything before writing real crawling logic2. Working with Live URLs and FilesScrapy Shell supports:
CSS is perfect for quick, readable extraction4. Important Behavior: Cached Responses🔹 One Hidden DetailScrapy Shell:
Always restart shell when debugging updated pages5. XPath Selectors (Advanced Power)🔹 Full DOM NavigationXPath lets you navigate HTML like a tree structure6. Absolute vs Relative XPath🔹 Absolute Path/html/body/div/p
XPath is powerful for uncertain or messy HTML structures9. CSS vs XPathFeatureCSSXPathSimplicity✔️ Easy❌ More complexPower❌ Limited✔️ Very powerfulFlexibilityMediumVery high10. Mental ModelThink of Scrapy Shell as:
and 👉 “engineered extraction logic”Once you master CSS + XPath inside the shell, you can confidently build spiders that work on even the most complex websites. You can listen and download our episodes for free on more than 10 different platforms: https://linktr.ee/cybercode_academy | |||
© My Podcast Data · Projet indépendant · Données issues d'Apple & Spotify