sinat_35361413 2017-08-13 17:31 采纳率: 0%
浏览 1062

求大神一个Python问题 实在不知道了?

import re
import requests
from operator import itemgetter
url='https://s.taobao.com/search?q=%E7%B1%B36&imgfile=&commend=all&ssid=s5-e&search_type=item&sourceId=tb.index&spm=a21bo.50862.201856-taobao-item.1&ie=utf8&initiative_id=tbindexz_20170813'
def getHtmlText(url):
try:
r=requests.get(url,timeout=30)
r.raise_for_status()
r.encoding=r.apparent_encoding
return r.text
except:
return ''
def parsePage(ilt,html):
try:
plt=re.findall(r'"view_price":"[\d.]*"',html)
tlt=re.findall(r'"raw_title":".*?"',html)
for i in range(len(plt)):
price=eval(plt[i].split(':')[1])
title = eval(tlt[i].split(':')[1])
ilt.append([price,title])
ilt=sorted(ilt,key=itemgetter(0))
print(ilt)
except:
print('异常?')
def printGoodsList(ilt):
tplt='{:4}\t{:8}\t{:16}'
print(tplt.format('序号','价格','商品名称'))
count=0

for g in ilt:
    count=count+1
    print(tplt.format(count,g[0],g[1]))

def main():
goods='小米6'
depth=1
start_url='https://s.taobao.com/search?q='+goods
infoList=[]

for i in range(depth):
    try:
        url=start_url+'&s='+str(44*i)
        html=getHtmlText(url)
        parsePage(infoList,html)
    except:
        pass
printGoodsList(infoList)

main()
我明明对ilt列表进行了排序
第一次输出ilt价格是从小到大
为什么格式化输出之后又不排序了
帮我解决下吧 我真的好痛苦

  • 写回答

1条回答 默认 最新

  • dabocaiqq 2018-06-11 16:37
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 我这模型写的不对吗?为什么lingo解出来的下面影子价格这一溜少一个变量
  • ¥50 树莓派安卓APK系统签名
  • ¥15 maple软件,用solve求反函数出现rootof,怎么办?
  • ¥65 汇编语言除法溢出问题
  • ¥15 Visual Studio问题
  • ¥20 求一个html代码,有偿
  • ¥100 关于使用MATLAB中copularnd函数的问题
  • ¥20 在虚拟机的pycharm上
  • ¥15 jupyterthemes 设置完毕后没有效果
  • ¥15 matlab图像高斯低通滤波