imgs-data.js 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. const cheerio = require('cheerio');
  2. var entities = require('html-entities').XmlEntities;
  3. const webdriver = require('selenium-webdriver');
  4. /**
  5. * 保存 展示图片
  6. * @param { WebDriver } driver
  7. */
  8. function imgsData(driver) {
  9. return new Promise(async (resolve, reject) => {
  10. let imgList = await driver.findElements(webdriver.By.js(() => document.querySelectorAll('#J_UlThumb li')))
  11. let imgs = [];
  12. let imgIndex = 0;
  13. async function eachImg(imgIndex) {
  14. const img = imgList[imgIndex];
  15. // 创建鼠标
  16. const actions = driver.actions({ async: true });
  17. await actions.move({ origin: img }).perform();
  18. await driver.sleep(1000);
  19. let obj = {};
  20. const thumbnailEle = await img.findElement(webdriver.By.tagName('img'));
  21. obj.thumbnail = await thumbnailEle.getAttribute('src');
  22. const imgEle = await driver.findElement(webdriver.By.js(() => document.querySelector('#J_ImgBooth')))
  23. obj.img = await imgEle.getAttribute('src');
  24. imgs.push(obj);
  25. imgIndex++;
  26. if (imgIndex === imgList.length) {
  27. resolve(imgs);
  28. } else {
  29. eachImg(imgIndex);
  30. }
  31. }
  32. eachImg(imgIndex);
  33. });
  34. }
  35. exports.imgsData = imgsData;