李锡钊 2023-04-03 11:12 采纳率: 100%
浏览 41
已结题

python数据爬取求帮助!急!

求解决方案!
想爬取立创商城元器件的价格,以下是源代码,python版本为3.10,pycharm的版本为2022.2.4

import requests
from lxml import etree


url = 'https://so.szlcsc.com/global.html?k=%25E7%2594%25B5%25E9%2598%25BB&hot-key=ADXL355BEZ-RL7'
headers = {
        # 防盗链
        'referer': 'https://so.szlcsc.com/',
        # 浏览器信息
        'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 '
                      'Safari/537.36 '
}
resp = requests.get(url, headers=headers)
tree = etree.HTML(resp.text)
names = tree.xpath('//*[@id="shop-list"]/table/tbody/tr[1]/td/div[2]/div[2]/div[3]/div[1]/div[1]/ul/li[2]/div/p/@originalprice')
print(names)
for item in names:
    print(item)

执行代码之后获取的数据应该是4.72,但是输出结果为空

img


以下代码为获取商品的型号

url = 'https://so.szlcsc.com/global.html?k=3296W-1-103LF&hot-key=ADXL355BEZ-RL7'
headers = {
        # 防盗链
        'referer': 'https://so.szlcsc.com/',
        # 浏览器信息
        'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 '
                      'Safari/537.36 '
}
resp = requests.get(url, headers=headers)
tree = etree.HTML(resp.text)
names = tree.xpath('//*[@id="shop-list"]/table/tbody/tr[1]/td/div[2]/div[2]/div[1]/div/ul/li[1]/span[2]/@title')
print(names)
for item in names:
    print(item)

img


输出结果是正确的
有没有那个老哥能帮忙解决一下

  • 写回答

3条回答 默认 最新

  • cjh4312 2023-04-03 11:47
    关注
    
    from selenium import webdriver
    from lxml import etree
    driver = webdriver.Edge()
    url='https://so.szlcsc.com/global.html?k=%25E7%2594%25B5%25E9%2598%25BB&hot-key=ADXL355BEZ-RL7'
    driver.get(url)
    html=etree.HTML(driver.page_source)
    dd=html.xpath('//@originalprice')
    print(dd)
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 4月11日
  • 已采纳回答 4月3日
  • 创建了问题 4月3日

悬赏问题

  • ¥15 Stata链式中介效应代码修改
  • ¥15 latex投稿显示click download
  • ¥15 请问读取环境变量文件失败是什么原因?
  • ¥15 在若依框架下实现人脸识别
  • ¥15 网络科学导论,网络控制
  • ¥100 安卓tv程序连接SQLSERVER2008问题
  • ¥15 利用Sentinel-2和Landsat8做一个水库的长时序NDVI的对比,为什么Snetinel-2计算的结果最小值特别小,而Lansat8就很平均
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错