我正在尝试从Craigslist的剪贴簿列表中获取信息,不幸的是,由于它们在幻灯片中,因此我似乎无法获取这些图像。
import requests
from bs4 import BeautifulSoup as soup
url = "https://newyork.craigslist.org/search/sss"
r = requests.get(url)
souped = soup(r.content, 'lxml')
由于图像甚至不在请求的html文件中,我是否需要以某种方式动态加载页面或其他内容。如果可以的话,我只能将其保留在python中,而不想要任何其他依赖项。在此先感谢您,这是非常新颖的,所以任何帮助都将有所帮助。
答案 0 :(得分:2)
使用类result-image gallery
查找A标签。每个标签都有一个data-ids
属性,该属性会使图像文件名称的一部分变旧。
<a href="https://newyork.craigslist.org/mnh/fuo/d/new-york-city-3-piece-shaped-ikea-couch/6812749499.html" class="result-image gallery" data-ids="1:00707_iRUU5VKwkWi,1:00H0H_6AIBqK2iQDU">
....
</a>
现在,如果要获取url,请首先获取该属性并解析部分图像的名称(在该示例中为00707_iRUU5VKwkWi
和00H0H_6AIBqK2iQDU
)。
现在您可以使用主机以及sufix(_300x300
)和扩展名来构建URL:
https://images.craigslist.org/00707_iRUU5VKwkWi_300x300.jpg
https://images.craigslist.org/00H0H_6AIBqK2iQDU_300x300.jpg