用于从视图源获取所有链接的python代码,包括所有标记

时间:2016-02-19 05:09:06

标签: python beautifulsoup python-requests

有人可以指导我,如何通过使用python获取在视图页面源中可见的所有链接。我想从所有标签中检索所有链接(例如链接,a,img,css ......所有内容)。下面是我试过的代码。

import requests
from bs4 import BeautifulSoup
r=requests.get(url)
soup = BeautifulSoup(r.content)
soup.prettify()
for anchor in soup.find_all('a',href=True):
    print anchor['href']
for anchor in soup.find_all('link',href=True):
    print anchor['href']
for anchor in soup.find_all('img',src=True):
    print anchor['src']
for anchor in soup.find_all('script',src=Treu):
    print anchor['src']
像这样,我可以从所有标签获取链接,但无法从样式表中获取链接。对于前    .bg {.bg {background:url(XXXX)}。

2 个答案:

答案 0 :(得分:0)

BeautifulSoup无法解析JS代码和CSS代码。但您可以使用RegExp执行此任务。

另外,如果你有很多相同的代码使用list,arrays和dict:

for anchor in soup.find_all('a',href=True):
    print anchor['href']
for anchor in soup.find_all('link',href=True):
    print anchor['href']

为:

for tag in ['a', 'link']:
    for anchor in soup.find_all(tag, href=True):
        print anchor['href']

然后您可以轻松更改代码

答案 1 :(得分:0)

$(function() { $(".carousel").jCarouselLite({ btnNext: ".next", btnPrev: ".prev", start: 1 }); });

的解决方案