作者fragmentwing (片翼碎梦)
看板Python
标题[问题] Selenium抓不到src的连结
时间Mon Mar 6 12:43:00 2023
问题解决,单纯只是class的位置搞混了
如题,想做爬虫抓图
用的网站是这个
https://unsplash.com/
这是正确的class位置:
https://imgur.com/Ri0YcfK
我从这篇开始改的:
https://reurl.cc/OVEXz9
另外他这篇的程式码改成现在用的语法可以运作後不知道为甚麽只能存一张图片
(大概是我太不熟这类爬虫工具了......)
我的程式码如下:
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By
from selenium.webdriver.chrome.options import Options
import os
import time
import numpy as np
options = Options()
folder_path = os.getcwd()
driver_path = folder_path + "\chromedriver_win32\chromedriver.exe"
options.chrome_executable_path = driver_path
driver = webdriver.Chrome(options=options)
driver.maximize_window()
img_url_dic = {}
driver.get("
https://unsplash.com/s/photos/burger")
# print(driver.page_source)
position = 0
picture_number = 0
for i in range(10):
position += i*500 + np.random.randint(100)
js = "document.documentElement.scrollTop=%d" % position
driver.execute_script(js)
time.sleep(np.random.random())
tags = driver.find_elements(By.XPATH,"//img[contains(@class,'tB6UZ
a5VGX')]")
src = []
for tag in tags:
src.append(tag.get_attribute('src'))
# print(src)
for i,element in enumerate(src):
print(i,element)
src_len = len(src)
print(f'{src_len=}')
driver.close()
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 223.138.74.61 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1678077784.A.DE0.html
1F:→ fragmentwing: 啊 靠腰 我知道哪里错了 class是在src後面那个才是 03/06 13:00
2F:→ fragmentwing: 不过这篇先留着 不知道哪里还有错 正在吃饭 等会回 03/06 13:00
3F:→ fragmentwing: 去修正 03/06 13:00
4F:→ fragmentwing: 改到目前可以了,虽然还是被反爬虫挡掉 03/06 14:52
5F:→ fragmentwing: 我把标题和内文修改一下 03/06 14:53
※ 编辑: fragmentwing (223.138.74.61 台湾), 03/06/2023 15:00:38