<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Neha Setia</title>
    <description>The latest articles on DEV Community by Neha Setia (@neha_setia_334eebb931a08e).</description>
    <link>https://dev.to/neha_setia_334eebb931a08e</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3853538%2F82d5c605-09b8-4aa8-a152-d5be39417fc1.png</url>
      <title>DEV Community: Neha Setia</title>
      <link>https://dev.to/neha_setia_334eebb931a08e</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/neha_setia_334eebb931a08e"/>
    <language>en</language>
    <item>
      <title>5 lessons from 5 interviews on AI agents and web scraping</title>
      <dc:creator>Neha Setia</dc:creator>
      <pubDate>Tue, 23 Jun 2026 08:46:14 +0000</pubDate>
      <link>https://dev.to/extractdata/5-lessons-from-5-interviews-on-ai-agents-and-web-scraping-107m</link>
      <guid>https://dev.to/extractdata/5-lessons-from-5-interviews-on-ai-agents-and-web-scraping-107m</guid>
      <description>&lt;p&gt;Over the last few months, I’ve been interviewing people at Zyte about AI, agents, web scraping, data quality, and what actually changes when LLMs enter developer workflows.&lt;/p&gt;

&lt;p&gt;These were not abstract “AI will change everything” conversations. They were grounded in the daily work of people building and maintaining scraping systems, QA workflows, AI-assisted developer tools, and agentic infrastructure.&lt;/p&gt;

&lt;p&gt;Five conversations stayed with me:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Adrian Chaves on Web Scraping Copilot and AI-generated scraping code&lt;/li&gt;
&lt;li&gt;Julia Medina and Mihaela Popova on how LLMs changed their day-to-day development work&lt;/li&gt;
&lt;li&gt;Javier on why AI feels like superpowers only when you already have judgment&lt;/li&gt;
&lt;li&gt;Tomasz Lesiak on why AI cannot fix data quality until you define what “good” means&lt;/li&gt;
&lt;li&gt;Konstantin Lopukhin on agent skills, scraping, and why the best skill often says the least&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Here are the five lessons I’m taking from them.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Simpler code is usually better scraping code
&lt;/h2&gt;

&lt;p&gt;In my interview with Adrian Chaves, we talked about what “correct” AI-generated scraping code actually means.&lt;/p&gt;

&lt;p&gt;The obvious answer is: it extracts the right data.&lt;/p&gt;

&lt;p&gt;But Adrian added a second standard that I keep coming back to: the code also has to be simple.&lt;/p&gt;

&lt;p&gt;That matters because web scraping is not the kind of software where you write code once and forget about it. Websites change. Layouts move. Fields disappear. New variants appear. Pagination breaks. A selector that worked last month may quietly fail next month.&lt;/p&gt;

&lt;p&gt;AI-generated code can easily become too defensive. It tries to handle every possible future case, and the result is often harder for a human to read, debug, and maintain.&lt;/p&gt;

&lt;p&gt;The better standard is not “write code that imagines every future website change.”&lt;/p&gt;

&lt;p&gt;It is:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Write the simplest code that gets the right value now, and surround it with tests and breakage detection.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That feels especially important in an AI-assisted workflow. If an agent generates a spider, the human still needs to understand what it produced. Maintainability is not a nice-to-have. It is part of correctness.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Developers are moving from coding-first to design-first
&lt;/h2&gt;

&lt;p&gt;In my conversation with Julia Medina and Mihaela Popova, both described a similar shift in how they work with LLMs.&lt;/p&gt;

&lt;p&gt;The work is less about typing every line yourself and more about deciding what should exist.&lt;/p&gt;

&lt;p&gt;That sounds small. It is not.&lt;/p&gt;

&lt;p&gt;When an AI assistant can generate code, the developer’s leverage moves upstream:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What are we trying to build?&lt;/li&gt;
&lt;li&gt;What should the finished output look like?&lt;/li&gt;
&lt;li&gt;What examples should the agent learn from?&lt;/li&gt;
&lt;li&gt;What schema defines success?&lt;/li&gt;
&lt;li&gt;What tests will tell us the output is wrong?&lt;/li&gt;
&lt;li&gt;What should we not automate yet?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Julia described Web Scraping Copilot as a test-driven loop: give it a schema, create fixtures, generate expected output, write extraction code, run the tests, and iterate when the output is wrong.&lt;/p&gt;

&lt;p&gt;Mihaela described LLMs inside production scraping workflows, where the question is not just “can the model extract this?” but where in the pipeline LLM judgment is actually useful.&lt;/p&gt;

&lt;p&gt;That is the real shift I heard: developers are not disappearing. They are moving into design, evaluation, review, and system boundaries.&lt;/p&gt;

&lt;p&gt;When agents can produce more code, the human job becomes more about defining what good looks like.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. AI multiplies judgment. It does not replace it.
&lt;/h2&gt;

&lt;p&gt;Javier described his experience with a line I loved:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;“I have superpowers now.”&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;But the interesting part was what those superpowers were made of.&lt;/p&gt;

&lt;p&gt;Not magic. Not blind delegation. Not “the AI knows everything now.”&lt;/p&gt;

&lt;p&gt;His superpower was years of engineering judgment moving faster.&lt;/p&gt;

&lt;p&gt;He uses AI to discuss approaches, document decisions, preserve context, and accelerate tedious parts of the work. But the quality still comes from knowing what is good, what is risky, what deserves skepticism, and when the assistant is simply being too agreeable.&lt;/p&gt;

&lt;p&gt;That distinction matters.&lt;/p&gt;

&lt;p&gt;A junior developer and a senior developer can use the same AI tool and get very different results. The difference is not only prompt quality. It is taste, context, pattern recognition, and the ability to evaluate the answer.&lt;/p&gt;

&lt;p&gt;AI can compress the time between idea and artifact. But it does not remove the need to know whether the artifact is any good.&lt;/p&gt;

&lt;p&gt;If anything, it makes that judgment more visible.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Data quality begins before AI enters the workflow
&lt;/h2&gt;

&lt;p&gt;My conversation with Tomasz Lesiak was a useful antidote to AI abstraction.&lt;/p&gt;

&lt;p&gt;Before asking whether AI can fix data quality, he brought the problem back to three questions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Did we catch every item?&lt;/li&gt;
&lt;li&gt;Did we fill every required field?&lt;/li&gt;
&lt;li&gt;Is the information actually correct?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Every QA process, whether manual, automated, or AI-assisted, is trying to answer some version of those questions.&lt;/p&gt;

&lt;p&gt;This is easy to forget because AI can make messy output look polished. It can summarize incomplete data. It can normalize wrong values. It can make a broken extraction feel more usable than it is.&lt;/p&gt;

&lt;p&gt;But if the crawl missed 40% of the products, a beautiful summary does not help.&lt;/p&gt;

&lt;p&gt;If the price belongs to the wrong product, valid JSON does not help.&lt;/p&gt;

&lt;p&gt;If a required field is empty even though the website had the information, the workflow failed.&lt;/p&gt;

&lt;p&gt;So before AI enters the quality process, the team still needs a schema, field definitions, expected outputs, manual review, and tests. LLMs can help with fields that are hard to check using regex or simple rules, but they cannot define “good data” on behalf of the project.&lt;/p&gt;

&lt;p&gt;That definition has to come first.&lt;/p&gt;

&lt;h2&gt;
  
  
  5. The best agent skill does not over-explain
&lt;/h2&gt;

&lt;p&gt;The fifth conversation, with Konstantin Lopukhin, helped me name something I had been noticing in agentic workflows.&lt;/p&gt;

&lt;p&gt;A good skill is not the longest possible instruction manual.&lt;/p&gt;

&lt;p&gt;In fact, too much instruction can make an agent worse. If you tell it exactly what path to follow in every case, it may miss the simpler and more reliable answer sitting in front of it.&lt;/p&gt;

&lt;p&gt;For web scraping, that matters a lot.&lt;/p&gt;

&lt;p&gt;A general-purpose coding agent may try to scrape visible HTML when the page has a clean embedded API. It may use &lt;code&gt;curl&lt;/code&gt; and get blocked. It may pick the first visible price without checking whether it belongs to the right product. It may produce a one-time answer when the user actually needs a repeatable spider.&lt;/p&gt;

&lt;p&gt;A useful scraping skill gives the agent the domain knowledge it needs:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;access is part of the problem&lt;/li&gt;
&lt;li&gt;the least fragile data source is usually best&lt;/li&gt;
&lt;li&gt;structured output must be checked&lt;/li&gt;
&lt;li&gt;tests matter&lt;/li&gt;
&lt;li&gt;evaluation stays foundational&lt;/li&gt;
&lt;li&gt;repeatability matters more than a one-off answer&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But it should not over-script the agent into brittle behavior.&lt;/p&gt;

&lt;p&gt;The best skill says enough to prevent obvious mistakes, but not so much that it prevents good judgment.&lt;/p&gt;

&lt;h2&gt;
  
  
  The pattern across all five
&lt;/h2&gt;

&lt;p&gt;The pattern I keep seeing is this:&lt;/p&gt;

&lt;p&gt;AI is not making web scraping less human.&lt;/p&gt;

&lt;p&gt;It is moving the human work.&lt;/p&gt;

&lt;p&gt;From typing to designing.&lt;/p&gt;

&lt;p&gt;From scraping once to building loops.&lt;/p&gt;

&lt;p&gt;From code generation to evaluation.&lt;/p&gt;

&lt;p&gt;From “can the agent do it?” to “can we trust the system?”&lt;/p&gt;

&lt;p&gt;That is the thread I want to keep following.&lt;/p&gt;

&lt;p&gt;Because the future of web scraping is not just agents that scrape.&lt;/p&gt;

&lt;p&gt;It is developers designing reliable web-data systems where agents, tools, infrastructure, tests, and human judgment all know their place.&lt;/p&gt;

&lt;h2&gt;
  
  
  Links
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.zyte.com/blog/adrian-chaves-web-scraping-copilot-interview/" rel="noopener noreferrer"&gt;The Scrapy whisperer: Adrian Chaves on Web Scraping Copilot&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.zyte.com/blog/not-the-same-developer-i-was-before-llms/" rel="noopener noreferrer"&gt;I’m not the same developer I was before LLMs&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.zyte.com/blog/not-an-interview-i-have-superpowers-now/" rel="noopener noreferrer"&gt;NotAnInterview: “I Have Superpowers Now”&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.zyte.com/blog/ai-wont-fix-your-data-quality/" rel="noopener noreferrer"&gt;AI won’t fix your data quality (until you answer these three questions)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.zyte.com/blog/the-best-agent-skill-is-the-one-that-says-the-least/" rel="noopener noreferrer"&gt;The best agent skill is the one that says the least&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>ai</category>
      <category>agents</category>
      <category>webscraping</category>
      <category>devtools</category>
    </item>
    <item>
      <title>What the Scrapy Maintainer Thinks About AI-Generated Scrapers</title>
      <dc:creator>Neha Setia</dc:creator>
      <pubDate>Sat, 11 Apr 2026 15:13:41 +0000</pubDate>
      <link>https://dev.to/extractdata/what-the-scrapy-maintainer-thinks-about-ai-generated-scrapers-24c0</link>
      <guid>https://dev.to/extractdata/what-the-scrapy-maintainer-thinks-about-ai-generated-scrapers-24c0</guid>
      <description>&lt;p&gt;I sat down with Adrian Chaves, one of the lead &lt;a href="https://www.scrapy.org/" rel="noopener noreferrer"&gt;Scrapy&lt;/a&gt; maintainers, who also works at Zyte, to ask him the questions I've been chewing on since Zyte launched Web Scraping Copilot: &lt;strong&gt;what happens when an LLM writes your spider(the web scraping code)? What gets easier? What doesn't change?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;His answers surprised me. A few highlights:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;On vibe coding:&lt;/strong&gt; Adrian has thoughts about developers treating scraper generation as a black box, and why Scrapy's design philosophy matters more, not less, when an LLM is writing the code.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;The bottleneck isn't what you think.&lt;/strong&gt; He argues the hard part of scraping in 2026 isn't writing code. It's reading pages. And that's the part LLMs still struggle with.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;What "good design meeting the future halfway" means.&lt;/strong&gt; Why frameworks like Scrapy that were built for humans are turning out to be the best frameworks for AI agents too.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Where LLMs actually help.&lt;/strong&gt; The concrete places where AI makes a scraper developer's life better, and where it just adds complexity.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Full conversation is on the Zyte blog, linked below. If you're building scrapers, thinking about adding AI to your extraction pipeline, or just curious what someone who's been maintaining one of the most widely used scraping frameworks for years thinks about all of this, it's worth a read.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.zyte.com/blog/adrian-chaves-web-scraping-copilot-interview/" rel="noopener noreferrer"&gt;Read the full interview on zyte.com&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;Happy to discuss in the comments. &lt;br&gt;
&lt;strong&gt;What are you using AI for in your scraping workflow right now, and where have you hit walls?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Tags: web scraping • scrapy • ai • opus • anti-bot • Claude AI • sonnet • open source&lt;/p&gt;

</description>
      <category>ai</category>
      <category>opensource</category>
      <category>claude</category>
      <category>webscraping</category>
    </item>
  </channel>
</rss>
