Невозможно загрузить полный HTML, используя Wget в пакетном скрипте - PullRequest
0 голосов
/ 23 мая 2019

Я создаю базу данных из частей digikey и использую Wget в своем пакетном скрипте для получения HTML.Я не могу загрузить полный HTML-код, используя URL-адрес по ключевым словам.

Например, я могу загрузить HTML-файл в свой «Test_Read_File.txt» с помощью URL-адреса "https://www.digikey.ca/product-detail/en/DF3-5P-2DSA-01/H3924-ND/560482" но невозможно, если я использую URL "https://www.digikey.ca/products/en?keywords=DF3-5P-2DSA(01)". Оба URL откроют одну и ту же страницу.Я бы использовал первый URL, но я тоже не смогу из-за номера «560482» в конце, который меняется для каждого компонента.Моя основная программа вызовет файл .txt с тысячами номеров деталей производителя и вставит их один за другим вместо DF3-5P-2DSA (01).Я не думаю, что агент необходим в этом случае.

SET AGENT="Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 10.0; WOW64; Trident/8.0; .NET4.0C; .NET4.0E)"

Wget -U %AGENT% -O Test_Read_File.txt "https://www.digikey.ca/products/en?keywords=DF3-5P-2DSA(01)"

1 Ответ

0 голосов
/ 31 мая 2019

В итоге я создал скрипт Python (.py), который использовал селен, и создал вызов из моей партии.

from time import sleep
from bs4 import BeautifulSoup
from selenium import webdriver
driver = webdriver.Chrome()
driver.get('https://www.digikey.com/products/en?keywords=EDH106M016A9BAA')

sleep(3)
source = driver.page_source
soup = BeautifulSoup(source)

saveFile = open('FILE-LOCATION','w',encoding='utf-8')
saveFile.write(str(soup))
saveFile.close()
driver.quit()
...