You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

我的Beautiful Soup代码未按预期运行,请求技术排查

代码问题排查
  • 变量名拼写错误:你定义的请求结果变量是html_txt,但初始化BeautifulSoup时误用了html_text,这会直接触发NameError,是代码无法运行的核心原因。

  • 未校验请求有效性:没有判断请求是否成功,若网站返回403/500等错误状态,拿到的不是有效HTML,后续解析自然失效。可以在请求后添加状态校验:

    if html_txt.status_code != 200:
        print(f"请求失败,状态码:{html_txt.status_code}")
        exit()
    
  • 可能存在反爬拦截:部分网站会拦截无标识的请求,建议添加请求头模拟浏览器访问:

    headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36"
    }
    html_txt = requests.get("http://transfer.ttc.com.ge/?page=live&setLng=ka", headers=headers)
    
  • 元素选择器可能失效:如果修正变量名后仍拿不到内容,大概率是页面结构已变更,tr的class组合text-left right txt-td可能不再存在,需用浏览器开发者工具重新确认目标元素的选择器。

修正后的示例代码:

from bs4 import BeautifulSoup
import requests
import lxml

headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36"
}
html_txt = requests.get("http://transfer.ttc.com.ge/?page=live&setLng=ka", headers=headers)

if html_txt.status_code != 200:
    print(f"请求失败,状态码:{html_txt.status_code}")
else:
    soup = BeautifulSoup(html_txt.text, "lxml")
    job = soup.find("tr", class_= "text-left right txt-td")
    print(job)

内容的提问来源于stack exchange,提问作者Sandro Futkaradze

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 14:05:18