FishHook
Извиняюсь если вас потревожил и отвлек своим сообщением. Вы так много написали текста но к сожалению не того, что мне поможет. Все же спасибо.
Код переделал.
Поднял свой скил.

Вот результат.
import urllib.request
import os
import time
from bs4 import BeautifulSoup
import re
#Определяем время в системе
time = time.strftime("%Y-%m-%d-%H-%M")
print(time)
#Определяем директорию в системе
dir = os.path.dirname(os.path.abspath(__file__))
#Прописываем хост сайта, который будем парсить
host = 'https://www.ebay.com'
#Определяем название файла с логом.
file = open("log-{}.txt".format(time), "w")
#Пробуем что-то написать в файл.
file.write(time)
for line in open("products.txt"):
data = line.split(",")
Serchartikul = data[1].strip()
#Параметры строки поиска на сайте не знаю как формировать из 2х частей славо богу работает без второй части
#/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=8809071365238&_sacat=0&LH_TitleDesc=0&_osacat=0&_odkw=8809520941846
url = "{}/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw={}".format(host, data[0])
#Получаем ответ
print(url)
url = urllib.request.urlopen(url)
if url.getcode() == 200:
soup = BeautifulSoup(url, "lxml")
product = soup.find('div', {'class': 's-item__image'})
links = product.find_all('a')
#Тут Нужна проверка для выхода из цикла, на случай если переменнаproduct = soup.find('div', {'class': 's-item__image'})
links = product.find_all('a')я links = пустая + запись в текстовый файл артикула товара которого нет на сайте соответственно нет картинок.
for a in links:
link = a.get('href')
print(link)
#Достаем ссылку на товар в результатах поиска
link = urllib.request.urlopen(link)
if link.getcode() == 200:
soup = BeautifulSoup(link, "lxml")
#Разбираем страницу товара
picture = soup.find('meta', content=re.compile('i.ebayimg.com')).get('content')
print(picture)
#href = "{}{}".format(host, data)
#Отладочный принт
#print(href)
img = urllib.request.urlopen(picture).read()
#Обрабатываем имя картинки. чтобы сохранить в коректном формате
name = data[0] +'.jpg'
print(name)
#Формируем путь для сохранения картинок
path = "{}/images/{}.{}".format(dir, Serchartikul, name)
f = open(path, "wb")
f.write(img)
f.close()
else:
print("Не удалось открыть страницу товара {}".format(data[1]))
else:
print("Не получен HTTP ответ 200")
На 40 ковой строчке столкнулся с проблемой выхода из цикла(вернее перезапуска, для поиска нового артикула) в случае пустой переменной.
product = soup.find('div', {'class': ‘s-item__image’})
links = product.find_all('a')
Повторюсь я не знаю языка Python, когда-то немного учил Java.
Написание даеться трудно, если у кого-то есть возможность подсобите.
Спасибо.