AI+代理IP手把手教你爬取某度

简介: AI+代理IP手把手教你爬取某度

一、引言

最近Deepseek火遍大江南北,很多朋友都会用它制作一些小型程序商用,其中不乏有网络爬虫。以前对于中小企业来说,“写个爬虫”似乎是一件遥不可及的事情。

不过现在,随着人工智能技术的不断进步,低代码甚至零代码的数据采集解决方案已经不再是梦想。接下来就让我们一起探索如何借助AI助手DeepSeek自动生成爬虫代码,再结合亮数据强大的网页解锁和搜索引擎爬虫功能,轻松实现对某度新闻搜索结果的高效抓取。

二、使用DeepSeek爬取某度搜索结果

在开始前,我们先一起观察一下搜索页。当我们输入关键字进行搜索时,URL部分会负责传递搜索参数。比如说我们想搜索一个关键词。注意观察URL部分,显然word负责指定搜索关键字。
image.png

当我们翻页之后会发现多了一个参数,每次翻页会让pn值增加10。这样我们就搞清楚了URL的主要构成。

事实上其他参数也有各自的功能,这里我们用一个表格罗列其中的一部分。

image.png

最好的办法就是复制一个真实的URL,在里面挖空留出我们要设置的参数部分。之后使用这个URL让Deepseek生成爬虫程序。在Deepseek中输入如下提示词:

你是一个Python编程专家,要完成一个百度搜索页面爬取的Python脚本,具体任务如下:

1. 解析网页:https://www.baidu.com/s?rtt=1&bsst=1&cl=2&tn=news&ie=utf-8&word={
   keyword}&x_bfe_rqs=03E80&x_bfe_tjscore=0.100000&tngroupname=organic_news&newVideo=12&goods_entry_switch=1&rsv_dl=news_b_pn&pn={
   pagenumber}
其中{
   keyword}的值由用户输入决定;{
   pagenumber}的值从0开始,以10递增,到40结束。

2. 解析网页:定位其中所有class="result-op c-container xpath-log new-pmd"的div标签,定位div标签中class="news-title-font_1xS-F"的a标签,提取其href属性值作为网页下载URL,提取其aria-label属性值,作为网页文件名;定位div标签中class="c-font-normal c-color-text"的span标签,作为网页的内容摘要;

3. 网页下载URL、网页文件名、网页的内容摘要都写入到Excel文件中,Excel文件保存到与本程序相同的文件夹中,文件名为{
   keyword}的值加excel文件后缀。

4. 注意:每一步都要输出信息到屏幕上;每爬取一个网址后,随机暂停3-5秒;每下载一个网页后,随机暂停3-6秒;为这个程序设置请求标头:
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:128.0) Gecko/20100101 Firefox/128.0
Accept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.6,en;q=0.4,ru;q=0.2
Accept-Encoding: gzip, deflate, br, zstd
Connection: keep-alive
Sec-Fetch-Dest: image
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: same-origin

将提示词发送给Deepseek很快就可以得到结果,这样我们就初步完成了任务。

image.png

以下是Deepseek生成的代码:

import requests
from bs4 import BeautifulSoup
import pandas as pd
import time
import random
import os
from fake_useragent import UserAgent

def get_user_agent():
    return {
   
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:128.0) Gecko/20100101 Firefox/128.0',
        'Accept': 'image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5',
        'Accept-Language': 'zh-CN,zh;q=0.8,en-US;q=0.6,en;q=0.4,ru;q=0.2',
        'Accept-Encoding': 'gzip, deflate, br, zstd',
        'Connection': 'keep-alive',
        'Sec-Fetch-Dest': 'image',
        'Sec-Fetch-Mode': 'no-cors',
        'Sec-Fetch-Site': 'same-origin'
    }

def scrape_baidu_news(keyword):
    print(f"开始爬取关键词: {keyword}")

    # 准备存储数据的列表
    data = []

    # 从0开始,每次增加10,直到40
    for pn in range(0, 41, 10):
        print(f"正在处理第 {pn//10 + 1} 页...")

        # 构造URL
        url = f"https://www.baidu.com/s?rtt=1&bsst=1&cl=2&tn=news&ie=utf-8&word={keyword}&x_bfe_rqs=03E80&x_bfe_tjscore=0.100000&tngroupname=organic_news&newVideo=12&goods_entry_switch=1&rsv_dl=news_b_pn&pn={pn}"
        print(f"构造的URL: {url}")

        try:
            # 发送请求
            headers = get_user_agent()
            response = requests.get(url, headers=headers)
            response.raise_for_status()
            print(f"成功获取第 {pn//10 + 1} 页内容")

            # 解析HTML
            soup = BeautifulSoup(response.text, 'html.parser')

            # 查找所有结果项
            results = soup.find_all('div', class_='result-op c-container xpath-log new-pmd')
            print(f"在第 {pn//10 + 1} 页找到 {len(results)} 条结果")

            for result in results:
                # 提取标题和URL
                title_tag = result.find('a', class_='news-title-font_1xS-F')
                if title_tag:
                    url = title_tag.get('href', '')
                    title = title_tag.get('aria-label', '无标题')

                    # 提取摘要
                    abstract_tag = result.find('span', class_='c-font-normal c-color-text')
                    abstract = abstract_tag.get_text(strip=True) if abstract_tag else '无摘要'

                    # 添加到数据列表
                    data.append({
   
                        'URL': url,
                        '标题': title,
                        '摘要': abstract
                    })

                    print(f"提取到结果: {title}")

                    # 随机暂停3-6秒
                    sleep_time = random.uniform(3, 6)
                    print(f"等待 {sleep_time:.2f} 秒...")
                    time.sleep(sleep_time)

            # 随机暂停3-5秒
            sleep_time = random.uniform(3, 5)
            print(f"页面处理完成,等待 {sleep_time:.2f} 秒...")
            time.sleep(sleep_time)

        except Exception as e:
            print(f"处理第 {pn//10 + 1} 页时出错: {str(e)}")
            continue

    # 保存到Excel
    if data:
        df = pd.DataFrame(data)
        excel_filename = f"{keyword}.xlsx"
        df.to_excel(excel_filename, index=False)
        print(f"数据已保存到 {excel_filename}")

        # 获取文件完整路径
        file_path = os.path.abspath(excel_filename)
        print(f"文件保存路径: {file_path}")
    else:
        print("没有提取到任何数据,不创建Excel文件")

if __name__ == "__main__":
    keyword = input("请输入要搜索的关键词: ")
    scrape_baidu_news(keyword)

三、使用网页解锁器

然而事情并没有这么简单,我们多运行几次就会发现网页被百度拦截了。这是因为我们访问太频繁且行为模式非常单一,这时候我们就需要使用一些工具绕过拦截。亮数据自研的黑科技小工具,让我们轻松应对网站拦截

image.png

这次我们要使用的是网页解锁API。登录以后,在控制面板的代理&抓取基础设施中,选择网页解锁器进入选购页。

image.png

之后填写通道名称。在下方可以选择一些辅助工具,这里我们暂时保持默认。点击添加开始使用。

image.png

在详细信息中就可以拿到我们连接代理服务器的主机、端口号、用户名、密码,在右侧有相应的代码样例。注意在这里一定要将本机IP添加到白名单中以确保能正常连接服务器。

image.png

基于上面的配置,我们需要将获取页面的请求先提交给亮数据服务器,等待接收它返回的页面后再进行操作。所以我们要在爬虫程序中修改两个位置。首先要在最上方添加代理信息。

proxy = 'http://brd-customer-hl_a0a48734-zone-baidu:tt5c75qi712k@brd.superproxy.io:33335'
proxies = {
   'http': proxy,
         'https': proxy}

之后在scrape_baidu_news()函数中将发送请求的代码response = requests.get(url, headers=headers)替换为response = requests.get(url, headers=headers, proxies=proxies)即可接入亮数据网页解锁器。

四、零基础编程爬虫

什么,你说你一点编程都不会?那也没问题,只要使用亮数据搜索引擎爬虫即可体验零代码编程。搜索引擎爬虫(SERP)是亮数据针对各大搜索引擎推出的爬虫工具,它能够直接将搜索结果以json格式返回。

image.png

接下来让我们一起来配置一下。同样是登录后进入控制面板,在代理&抓取基础设施中选择搜索引擎爬虫SERP进入选购。

image.png

在选购页填写通道名称,下方暂时保持默认。点击添加即可开始使用。

image.png

我们可以像网页解锁器那样使用SERP,也可以在操作平台中进行零代码编程。进入操作平台,在下方即可开始定制搜索内容。我们可以切换搜索引擎,设置搜索区域、语言、内容类型、分页、设备等等参数来满足需求。输入搜索内容,点击搜索即可预览结果。在左侧是实际的搜索结果页,右侧则是相应的json文件内容。

image.png

在调整完毕后点击底部的生成API代码,即可生成相应的程序以爬取搜索结果,是不是很方便呢?

image.png

五、总结

通过上面的步骤,我们不仅了解如何使用DeepSeek轻松生成爬虫代码,实现了搜索结果的提取与保存。之后,我们引入亮数据的网页解锁器,有效解决了频繁访问引发的封禁问题,保障了爬虫运行的稳定性和连续性。

对于完全不具备编程基础的中小企业,亮数据提供的搜索引擎爬虫工具让“零代码爬虫”成为现实,只需简单配置即可获取结构化搜索结果。这不仅降低了爬虫技术的门槛,也为更多人打开了数据智能的大门。如果你也曾因编程门槛或反爬机制望而却步,不妨试试这套“AI+低代码”的组合方式,也许下一次的数据采集项目,你只需动动手指,就能轻松搞定。

相关文章
|
2月前
|
数据采集 机器学习/深度学习 人工智能
AI时代的流量博弈:代理IP如何赋能智能应用突围
在AI时代,流量获取成为互联网发展的关键挑战。本文探讨代理IP技术如何助力AI应用突破流量困境。从身份伪装、地域突破到并发采集,代理IP为数据收集与智能应用提供支持。同时,文章分析不同类型代理IP的特点及应用场景,并强调合规使用的重要性。未来,边缘计算和AI将与代理IP深度融合,推动更高效的数据流通模式,助力AI应用实现增长突破。
72 7
AI时代的流量博弈:代理IP如何赋能智能应用突围
|
5月前
|
数据采集 存储 人工智能
代理IP与AI自我进化:探索未来智能的新边界
在AI快速发展的今天,数据获取成为制约其进步的关键因素。代理IP技术通过匿名性和灵活性,帮助AI突破地域限制、绕过反爬虫机制,提升数据质量和模型训练效率,促进AI自我进化。本文通过实例和代码,探讨了代理IP在AI发展中的作用及潜在价值,强调了合理使用代理IP的重要性。
86 1
|
2月前
|
数据采集 人工智能 自然语言处理
代理IP:撕开AI大模型"可靠性"的华丽外衣
在AI大模型发展热潮中,代理IP的使用正悄然引发数据源头到模型评估的信任危机。从数据采集中的“幽灵请求”到模型测试中的“虚假繁荣”,再到可靠性崩塌的连锁反应,代理IP带来的污染问题日益凸显。文章深入剖析了行为模式失真、内容生成偏差、对抗样本陷阱等问题,并提出通过建立“数字指纹”鉴伪系统、开发环境感知型模型架构和构建动态评估基准来破解困局。唯有清除代理IP的隐忧,回归真实数据,才能夯实AI发展的基石,推动人机共生的可持续进化。
43 1
|
1月前
|
数据采集 人工智能 监控
AI时代下的代理IP新机遇:解锁数据、安全与效率的隐形密码
在AI浪潮推动下,代理IP从辅助工具升级为数据采集与传输的核心基础设施。它突破地域限制、规避反爬机制,助力AI模型训练效率提升;通过智能路由和协议优化,实现高效稳定的数据传输;同时满足隐私保护与合规需求。在电商、金融、内容创作等领域,代理IP已成为不可或缺的效率与安全护航者。未来,智能化、合规化、全球化将成为其发展关键趋势。
45 0
|
2月前
|
数据采集 人工智能 自然语言处理
代理IP与AI的碰撞:网络安全新防线解码
在数字化战争升级的背景下,代理IP与人工智能(AI)正重塑网络安全规则。代理IP作为“隐形斗篷”,提供身份伪装、流量清洗、数据加速和合规审计等功能;AI加持使其进化为动态路由优化、威胁狩猎和隐私保护的战略工具。两者协同作战,在智能风控、跨境电商、汽车安全测试等场景中展现巨大价值。尽管面临动态IP隐患、注入攻击风险和法律合规难题,但通过技术创新可有效应对。未来,认知安全融合、量子代理网络和数字孪生防御将引领技术趋势,为企业带来效率革命、安全进化和战略赋能。掌握这一技术共生关系,是赢得数字时代生存权的关键。
59 0
|
4月前
|
人工智能 缓存 安全
代理IP助力AI动画创作新风潮
近年来,3D动画产业经历着从传统手工绘制和CGI向AI辅助制作的深刻变革。代理IP技术在这一过程中发挥了重要作用,通过提高数据访问速度、增强数据处理能力、突破网络限制及保护隐私安全,为AI动画创作提供了强有力支持。本文将通过具体案例和技术解析,探讨代理IP如何助力AI动画创作,展现其在未来动画产业中的巨大潜力。
64 3
|
4月前
|
机器学习/深度学习 人工智能 自然语言处理
AI与代理IP:携手共创美好未来
在数字化浪潮中,人工智能(AI)与代理IP技术的融合正推动网络环境的智能化发展。AI凭借深度学习、自然语言处理等能力,结合代理IP的匿名性和灵活性,为网络安全、数据分析、内容分发等领域带来革命性变革。本文探讨两者协同作用,通过案例和代码展示其如何共同优化网络性能、保护隐私并提升效率,展望未来智能化、安全化的网络环境。 AI与代理IP的融合不仅提升了网络访问的效率与稳定性,还为智能风控、智能客服及全球内容分发网络(CDN)等应用提供了坚实支持。AI优化代理IP选择与调度,代理IP则保障AI应用的安全与隐私,二者相辅相成,共同推动全球化、智能化的发展趋势。
191 7
|
5月前
|
人工智能 安全 算法
AI时代下的代理IP:在线旅游的新篇章
随着AI技术的发展,在线旅游行业迎来变革。代理IP作为关键一环,通过隐藏用户真实IP、优化网络连接、突破地域限制等手段,提升用户体验和数据安全性。本文探讨代理IP在在线旅游中的应用,结合实际代码与案例,展示其助力行业发展的具体方式。未来,AI与5G等新技术将进一步推动代理IP的应用创新,为用户提供更便捷、安全的旅游服务。
62 3
|
5月前
|
机器学习/深度学习 人工智能 负载均衡
利用AI智能分析代理IP流量:提升网站性能的新策略
在数字时代,网站性能至关重要。代理IP技术广泛应用于突破地域限制、保护隐私和优化访问速度,但也带来了服务器负担加重和安全风险。AI智能分析代理IP流量成为有效策略,通过精准识别、动态调整和预测分析,提升网站性能和安全性。案例显示,某电商平台通过AI智能分析成功提升了访问速度和安全性,用户满意度显著提高。未来,AI技术将进一步优化代理IP应用,助力网站发展。
108 5
|
5月前
|
缓存 人工智能 负载均衡
AI革新迭代:如何利用代理IP提升智能系统性能
在人工智能快速发展的背景下,智能系统的性能优化至关重要。本文详细介绍了如何利用代理IP提升智能系统性能,涵盖数据加速与缓存、负载均衡、突破地域限制、数据传输优化和网络安全防护等方面。结合具体案例和代码,展示了代理IP在实际应用中的价值和优势。
77 0

热门文章

最新文章