教你如何用 Python 爬取爱企查企业信息

在这个数据驱动的时代,爬虫技术变得越来越重要。今天,我将带你了解如何通过 Python 爬取爱企查上的企业信息。以下是整个流程的概述。

爬取流程

步骤 内容描述
第一步 安装所需库
第二步 发送请求获取网页内容
第三步 解析HTML内容
第四步 提取企业信息
第五步 存储或展示提取的信息

第一步:安装所需库

要执行爬虫,我们需要使用一些第三方库,如 requestsBeautifulSoup。打开命令行终端,并输入以下命令:

pip install requests beautifulsoup4

这两条命令分别用来安装 requestsBeautifulSoup 库。

第二步:发送请求获取网页内容

使用 requests 库发送 HTTP 请求,并获取网页的 HTML 内容。

import requests

# 设定目标URL
url = '

# 发送请求
response = requests.get(url)

# 检查请求是否成功
if response.status_code == 200:
    # 获取网页内容
    html_content = response.text
    print("网页内容获取成功")
else:
    print("请求失败,状态码:", response.status_code)

在这段代码中:

  • 我们引入了 requests 库。
  • 设定了目标 URL。
  • 使用 requests.get() 方法发送请求。
  • 通过 response.status_code 检查请求是否成功,成功时获取 HTML 内容。

第三步:解析 HTML 内容

一旦我们得到了 HTML 内容,下一步是使用 BeautifulSoup 来解析它。

from bs4 import BeautifulSoup

# 解析HTML内容
soup = BeautifulSoup(html_content, 'html.parser')

# 打印解析后的内容以确保解析成功
print(soup.prettify()[:1000])  # 仅打印前1000个字符

在这段代码中:

  • 我们从 bs4 库中引入了 BeautifulSoup 类。
  • 使用 BeautifulSoup() 创建一个 BeautifulSoup 对象,并将 HTML 内容传入进行解析。
  • 使用 .prettify() 方法可以美化输出,便于检查解析是否成功。

第四步:提取企业信息

接下来,我们需要从解析后的 HTML 文件中提取我们需要的信息。假设我们要提取企业名称和网址。

# 假设每个企业信息都在特定的div标签内
companies = soup.find_all('div', class_='company-info')

# 存储提取的企业信息
company_list = []

for company in companies:
    name = company.find('h4').text.strip()  # 企业名称
    link = company.find('a')['href']  # 企业链接
    company_list.append({'name': name, 'link': link})  # 将信息存储到列表中

# 打印提取的企业信息
for company in company_list:
    print(company)

在这段代码中:

  • 通过 soup.find_all() 方法找到所有的企业信息块。
  • 在每个企业信息块内,我们提取企业名称和链接。
  • 将提取的数据以字典的形式存储在 company_list 列表中。

第五步:存储或展示提取的信息

最后,你可以选择将提取的信息存储到文件中,或者直接在控制台输出。这里我们选择输出。

# 打印所有企业信息
for idx, company in enumerate(company_list, 1):
    print(f"{idx}. 企业名称: {company['name']}, 企业链接: {company['link']}")

在这段代码中:

  • 我们使用 enumerate() 函数给企业编号,并打印它们的信息。

通过以上步骤,我们基本上完成了用 Python 爬取爱企查企业信息的任务。虽然这个示例比较简单,但它提供了爬取和解析网页的基础框架。希望你能在实践中进一步深入理解这些步骤,并对Python爬虫有更深入的掌握。

总结

在这篇文章中,我们学习了如何使用 Python 实现一个简单的爬虫。我们首先安装了所需的库,然后发送请求来获取网页内容,再解析 HTML,提取所需的信息,最后以易于整合的方式展示结果。希望这些内容能对你有所帮助,祝你在编程的旅程中取得更好的进展!