我正在抓取此网页以供个人使用https://asheville.craigslist.org/search/fua并在提取页面上每个项目的缩略图时遇到问题。当我使用“检查”查看html DOM时,我可以查看包含我需要的. jpg的图像标签,但当我使用“查看页面源”时,img标签不会显示。起初我认为这可能是一个异步javascript加载问题,但一个可靠的消息来源告诉我,我应该能够直接用漂亮的汤抓取缩略图。
import lxml
import requests
from bs4 import BeautifulSoup
from fake_useragent import UserAgent
ua = UserAgent()
r = requests.get("https://asheville.craigslist.org/search/fua", params=dict(postal=28804), headers={"user-agent":ua.chrome})
soup = BeautifulSoup(r.content, "lxml")
for post in soup.find_all('li', "result-row"):
for post_content in post.findAll("a", "result-image gallery"):
print(post_content['href'])
for pic in post_content.findAll("img", {'alt class': 'thumb'}):
print(pic['src'])
有人能澄清我在这里误解了什么吗?将打印“a”标记的href属性的值,但我似乎无法打印“img”标记的src属性。提前感谢!
我能够用以下代码读取img标签:
for post in soup.find_all('li', "result-row"):
for post_content in post.find_all("a", "result-image gallery"):
print(post_content['href'])
for pic in post_content.find_all("img"):
print(pic['src'])
关于从craigslist上抓取的一些想法:
>
每个帖子似乎在一到两个图片之间加载。仔细检查后,除非单击箭头,否则不会加载旋转木马图像。如果你需要每篇文章的每张照片,你应该找到一种不同的方式来编写脚本,可能是通过访问每个有多个图像的文章的链接。
此外,我认为使用Selenium进行网络抓取非常好。您可能不需要它来完成这个项目,但它可以让您做更多的事情,例如单击按钮、输入表单数据等。这是我使用Selenium抓取数据的快速脚本:
import lxml
import requests
from bs4 import BeautifulSoup
from selenium import webdriver
def test():
url = "https://asheville.craigslist.org/search/fua"
driver = webdriver.Firefox()
driver.get(url)
html = driver.page_source.encode('utf-8')
soup = BeautifulSoup(html, "lxml")
for post in soup.find_all('li', "result-row"):
for post_content in post.find_all("a", "result-image gallery"):
print(post_content['href'])
for pic in post_content.find_all("img"):
print(pic['src'])
我想从图像(即img)标签中提取源(即src)属性,我使用bs4,我不能使用来获取,但是我可以获取。我该怎么办?
我试图使用美丽的汤抓取newegg的产品名称、描述、价格和图像。我有以下bs4.element.标签类型,我想从标签中提取“src”链接。以下是我的标签: 我怎样才能提取 从这个标签?我试过了 但我收到了Keyerror。
问题内容: 我正在尝试将所有图像元素匹配为字符串, 这是我的正则表达式: 这可行,但是我想提取所有图像。因此,当我在此String上执行正则表达式时: 它返回: 问题答案: 您需要使用捕获组来提取URL,并且如果要全局匹配(即,不止一次),则在使用捕获组时,需要循环使用(在全局匹配时忽略捕获组)。 例如
假设你有一个网站, example.com 上面有一些图像的大小被调整到了非常低的质量。当您单击图像时,将转到“查看图像”页面,例如:。 例如:com/view?image=image_related_temp_code 在此页面上,图像以全质量加载。但是,如果您通过Chrome Dev控制台检查其< code>src属性以下载/浏览< code>src链接,您会得到另一个图像,显示为文本返回,这
在HTML文档中,我有以下标记 我正在使用JSoup,希望提取中包含的URL,该URL由标识。在阅读了下面的文章之后 > JSoup解析标记中的数据 我想出了这段代码 但这些都是印刷品 我尝试过其他的变化,但都没有成功。我要么什么也没打印出来,要么最后出现了空指针异常。 我不确定如何提取
我们正在构建docker映像,并在docker构建期间添加一些元数据标签,例如: 当我们稍后在kubernetes吊舱中使用此图像时,我们希望从kubernetes api检索该标签。这对于跟踪图像标记本身中编码的内容以外的其他元数据非常有用。 标签可以通过节点上的docker获得,但我找不到任何方法在kubernetes中检索它们。这可能吗?