爬虫爬取《财富》中国500强

问题遇到的现象和发生背景

最近刚开始学爬虫,遇到了个问题,我用爬虫爬取《财富》世界500强的时候能成功运行的代码,但是我想用同样的代码爬取同个网站的不同数据,但是却爬取失败了,只是爬取了网页的源代码,解析不了

问题相关代码,请勿粘贴截图

import re
import time

导入 requests 库

import requests

导入 BeautifulSoup 库

from bs4 import BeautifulSoup

try:
# 请求的 URL 路径,2021年财富世界500强排行榜
url = "http://www.fortunechina.com/fortune500/c/2020-07/27/content_369925.htm"
# 发送 GTE 请求
response = requests.get(url)

# 响应内容编码方式
print("response.encoding = ", response.encoding)
# 响应内容编码方式改为 'utf-8'
response.encoding = 'utf-8'
print("response.encoding = ", response.encoding)

# HTTP 响应内容字符串,即 url 对应的页面内容
text = response.text
print('text', text)

# 使用 html5lib 解析器,以浏览器的方式解析文档,生成 HTML5 格式的文档
soap = BeautifulSoup(text, 'html5lib')
print('soap.text', soap)

# 查找符合查询条件的第一个标签节点(tbody)
top500 = soap.find('tbody')

# 以可写的方式打开 csv 文件
file1 = open('top500', 'w', encoding='utf-8')
# 用于测试编码错误的例外
newLine = ''

i = 0
# 传入 正则表达式 re 库
for tag in top500.findAll(re.compile("^td")):
    i += 1
    newLine = newLine + tag.string + "|"
    # print('newLine = ', newLine)
    if i == 6:
        # 2021年财富500强数据,一行为1个公司,以 “|” 分隔
        print('newLine = ', newLine)
        # 单行写入文件
        file1.writelines(newLine + '\n')
        i = 0
        newLine = ''
# 关闭文件
file1.close()
运行结果及报错内容

img

我的解答思路和尝试过的方法

我自己感觉应该还需要把re搜索的方法给改一下,但是奈何本人自己的知识水平太差了,改re搜索方式也改掉不正确,上面代码的url是中国榜的,本来那里应该是世界榜的,我就只是换了个url结果就解析不出来了。

我想要达到的结果

我想爬取的是中国500强的榜单