【发布时间】:2018-08-22 07:56:33
【问题描述】:
HTML 代码:
<div>
<p class="title">
<a href="/news/123456">title_1</a>
</p>
</div>
<div>
<p class="title">
<a href="/news/789000">title_2</a>
</p>
</div>
我的代码:
def web(WebUrl):
site = urlparse(WebUrl)
code = requests.get(WebUrl)
plain = code.text
s = BeautifulSoup(plain, "html.parser")
p_containers = s.find('p', {'class':'title'})
for title in s.find_all('p', {'class':'title'}):
line = title.get_text()
print(line)
for link in p_containers.find_all('a'):
line2 = link.get('href')
print(site.netloc + str(line2))
大家好,我需要一些帮助,我的任务是从网页中提取标题和链接,我能够提取标题但不能提取链接。当我尝试抓取链接时,我只成功抓取了第一个链接,以下链接被忽略并替换为第一个抓取的链接。
【问题讨论】:
-
不检查我认为答案可能是将
p_containers = s.find('p', {'class':'title'})更改为p_containers = s.find_all('p', {'class':'title'}) -
不,我错了,回答跟随!
-
Opps,for 循环中缺少缩进,它是嵌套的
-
如果我的回答有帮助,您可以将其标记为已接受
标签: python web-scraping beautifulsoup web-crawler scrapy-spider