0

我对python很陌生。但我想从在线招聘门户网站中提取一些招聘信息。

使用以下代码,我想提取特定网站的职位发布的标题:

def jobtitle(soup):
    jobs=[]
        for div in soup.find_all(name="div", attrs={"class"}:"row"}):
            for a in div.find_all(name="a",attrs={"data-tn-element":"jobTitle"}):
            jobs.append(a["title"])
    return(jobs)
jobtitle(soup) 

我收到此错误消息:

for div in soup.find_all(name="div", attrs={"class"}:"row"}):
^
IndentationError: unexpected indent

我尝试了许多其他网站上推荐的不同方法,但没有任何效果。我只是不知道问题是什么。我尝试了不同的空格,但我只是不明白我做错了什么。

有任何想法吗?我将不胜感激!

非常感谢 :-)

4

1 回答 1

4

删除第一行的缩进。第一个 for 语句应该直接在 jobs=[] 声明下。

def jobtitle(soup):
    jobs=[]
    for div in soup.find_all(name="div", attrs={"class"}:"row"}):
        for a in div.find_all(name="a",attrs={"data-tn-element":"jobTitle"}):
            jobs.append(a["title"])
    return(jobs)
jobtitle(soup)
于 2018-07-19T19:55:53.713 回答