在HTML文件中查找字符串?

时间:2016-03-19 07:47:10

标签: python html

Python noob在这里。我正在尝试使用Python在HTML文件中打印包含子字符串的行。我知道字符串在文件中,因为当我按住ctml + f我在html文件中搜索的字符串时,我发现它。但是,当我运行我的代码时,它不会打印所需的结果。有人可以解释我做错了吗?

import requests
import datetime


from BeautifulSoup import BeautifulSoup

now =datetime.datetime.now()

cmonth = now.month
cday = now.day
cyear = now.year
find = 'boxscores/201'


url = 'http://www.basketball-reference.com/boxscores/index.cgi?lid=header_dateoutput&month={0}&day=17&year={2}'.format(cmonth,cday,cyear)
response = requests.get(url)
html = response.content
print html

for line in html:
    if find in line:
        print line

2 个答案:

答案 0 :(得分:2)

在请求包中,response.content是一个字符串,所以你应该像这样搜索:

if find in html:
    # do something

通过

迭代response.content

for line in html

你正在迭代字符串中的各个字符,而不是行。

答案 1 :(得分:1)

正如snakecharmerb所说,使用

for line in html :

当你是一个字符串而不是行时,你会遍历html的字符。但你可以使用

for line in html.split("\n") :

迭代线。