python异常:解析错误

时间:2015-10-09 12:48:57

标签: python parsing python-3.x exception-handling

我正在尝试在解析链接时编写异常:

import requests
from bs4 import BeautifulSoup

IDFile = open('IDs.csv')
IDReader = csv.reader(IDFile)
ID = list(IDReader)
for row in ID:
    col1,col2 = row
    ID ="%s" % (col2)

    url = requests.get("http://.......")
    soup = BeautifulSoup(url.text, "lxml")
    print(soup)
    ## execute more code if "results:" is greater than zero

“print(soup)”的输出是:

<html><body><p>{ success:true ,results:0,rows:[], ID:5432}</p></body></html>

IDs.csv包含:

14-Aug-2015,5431
30-May-2015,5432
17-Feb-2015,5433

我想写一个例外:

如果输出“print(汤)有”结果:0“,则将变量ID(本例中为5432)APPEND到zero-results.txt文件并处理来自我的ids.csv的下一个id(5433) 文件。

否则如果输出“print(汤)有”结果:1“或更大,则继续处理剩余代码

请帮助,thanx

1 个答案:

答案 0 :(得分:0)

以下是获取结果编号的一些代码:

import re
content = str(soup)
matchObj = re.search("results:(\\d)", content)
resultNum = int(matchObj.group(1))
if resultNum > 0:
    # do stuff
    pass
else:
    # do stuff
    pass

要获取ID,请再次使用re模块,或使用其中一种汤方法。

我认为你的问题是询问if statements。例外是错误处理的一部分,这是一个不同的主题。