Heim Web-Frontend js-Tutorial Verwenden Sie Selen, um Taobao-Dateninformationen zu erfassen

Verwenden Sie Selen, um Taobao-Dateninformationen zu erfassen

Jun 07, 2018 pm 03:20 PM
selenium 抓取 淘宝

Im Folgenden werde ich Ihnen ein Beispiel für die Verwendung von Selen zur Erfassung von Taobao-Produktinformationen vorstellen. Es hat einen guten Referenzwert und ich hoffe, dass es für alle hilfreich sein wird.

Taobao-Seiten verwenden viele JS zum Laden von Daten, daher ist es einfacher, Selen zum Crawlen zu verwenden. Als Testtool wird Selen hauptsächlich mit den fensterlosen Browser-Phantomjs verwendet.

import re
from selenium import webdriver
from selenium.common.exceptions import TimeoutException
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from pyquery import PyQuery as pq
'''
wait.until()语句是selenum里面的显示等待,wait是一个WebDriverWait对象,它设置了等待时间,如果页面在等待时间内
没有在 DOM中找到元素,将继续等待,超出设定时间后则抛出找不到元素的异常,也可以说程序每隔xx秒看一眼,如果条件
成立了,则执行下一步,否则继续等待,直到超过设置的最长时间,然后抛出TimeoutException
1.presence_of_element_located 元素加载出,传入定位元组,如(By.ID, 'p')
2.element_to_be_clickable 元素可点击
3.text_to_be_present_in_element 某个元素文本包含某文字
'''
# 定义一个无界面的浏览器
browser = webdriver.PhantomJS(
 service_args=[
  '--load-images=false',
  '--disk-cache=true'])
# 10s无响应就down掉
wait = WebDriverWait(browser, 10)
#虽然无界面但是必须要定义窗口
browser.set_window_size(1400, 900)

def search():
 '''
 此函数的作用为完成首页点击搜索的功能,替换标签可用于其他网页使用
 :return:
 '''
 print('正在搜索')
 try:
  #访问页面
  browser.get('https://www.taobao.com')
  # 选择到淘宝首页的输入框
  input = wait.until(
   EC.presence_of_element_located((By.CSS_SELECTOR, '#q'))
  )
  #搜索的那个按钮
  submit = wait.until(EC.element_to_be_clickable(
   (By.CSS_SELECTOR, '#J_TSearchForm > p.search-button > button')))
  #send_key作为写到input的内容
  input.send_keys('面条')
  #执行点击搜索的操作
  submit.click()
  #查看到当前的页码一共是多少页
  total = wait.until(EC.presence_of_element_located(
   (By.CSS_SELECTOR, '#mainsrp-pager > p > p > p > p.total')))
  #获取所有的商品
  get_products()
  #返回总页数
  return total.text
 except TimeoutException:
  return search()

def next_page(page_number):
 '''
 翻页函数,
 :param page_number:
 :return:
 '''
 print('正在翻页', page_number)
 try:
  #这个是我们跳转页的输入框
  input = wait.until(EC.presence_of_element_located(
   (By.CSS_SELECTOR, '#mainsrp-pager > p > p > p > p.form > input')))
  #跳转时的确定按钮
  submit = wait.until(
   EC.element_to_be_clickable(
    (By.CSS_SELECTOR,
     '#mainsrp-pager > p > p > p > p.form > span.J_Submit')))
  #清除里面的数字
  input.clear()
  #重新输入数字
  input.send_keys(page_number)
  #选择并点击
  submit.click()
  #判断当前页是不是我们要现实的页
  wait.until(
   EC.text_to_be_present_in_element(
    (By.CSS_SELECTOR,
     '#mainsrp-pager > p > p > p > ul > li.item.active > span'),
    str(page_number)))
  #调用函数获取商品信息
  get_products()
 #捕捉超时,重新进入翻页的函数
 except TimeoutException:
  next_page(page_number)

def get_products():
 '''
 搜到页面信息在此函数在爬取我们需要的信息
 :return:
 '''
 #每一个商品标签,这里是加载出来以后才会拿网页源代码
 wait.until(EC.presence_of_element_located(
  (By.CSS_SELECTOR, '#mainsrp-itemlist .items .item')))
 #这里拿到的是整个网页源代码
 html = browser.page_source
 #pq解析网页源代码
 doc = pq(html)
 items = doc('#mainsrp-itemlist .items .item').items()
 for item in items:
  # print(item)
  product = {
   'image': item.find('.pic .img').attr('src'),
   'price': item.find('.price').text(),
   'deal': item.find('.deal-cnt').text()[:-3],
   'title': item.find('.title').text(),
   'shop': item.find('.shop').text(),
   'location': item.find('.location').text()
  }
  print(product)

def main():
 try:
  #第一步搜索
  total = search()
  #int类型刚才找到的总页数标签,作为跳出循环的条件
  total = int(re.compile('(\d+)').search(total).group(1))
  #只要后面还有就继续爬,继续翻页
  for i in range(2, total + 1):
   next_page(i)
 except Exception:
  print('出错啦')
 finally:
  #关闭浏览器
  browser.close()

if __name__ == '__main__':
 main()
Nach dem Login kopieren

Ich habe das Obige für Sie zusammengestellt und hoffe, dass es Ihnen in Zukunft hilfreich sein wird.

Verwandte Artikel:

Implementieren einer Lupe durch JQuery-Technologie

So verwenden Sie die Bilderkennungstechnologie von Puppeteer, um den Baidu-Index-Crawler zu implementieren

So rufen Sie JSON mit js auf

Das obige ist der detaillierte Inhalt vonVerwenden Sie Selen, um Taobao-Dateninformationen zu erfassen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie überprüfe ich, wo sich die Lieferadresse von Taobao befindet? Wie überprüfe ich die Lieferadresse von Bestellungen, die in der Taobao-App aufgegeben werden? Wie überprüfe ich, wo sich die Lieferadresse von Taobao befindet? Wie überprüfe ich die Lieferadresse von Bestellungen, die in der Taobao-App aufgegeben werden? Mar 12, 2024 pm 04:00 PM

Die Taobao-App kann alle Ihre Einkaufsprobleme lösen. Es gibt so viele Händler, die darauf warten, von Ihnen ausgewählt zu werden, egal welche Art von Produkten Sie kaufen möchten, sodass jeder sie direkt finden kann Bestellungen aufgeben und kaufen, und alle Funktionen können frei bedient werden. Wenn Sie eine Bestellung erfolgreich aufgeben, müssen Sie nur darauf warten, dass der Händler die Waren versendet und die Logistiklieferung durchführt. Dies ist sehr praktisch und kann von jedem angezeigt werden Informieren Sie sich über die Versandorte dieser Produkte und wissen Sie, wohin ihre Produkte geliefert werden. Insbesondere beim Kauf einiger elektronischer Produkte können Sie einige entsprechende Versandorte überprüfen, um das Problem des Kaufs einiger generalüberholter Geräte zu vermeiden.

So erhalten Sie den kostenlosen roten Umschlag von Taobao 2024 So erhalten Sie den kostenlosen roten Umschlag von Taobao 2024 May 09, 2024 pm 03:22 PM

Die Gratis-Bestellveranstaltung 2024 findet dreimal täglich statt. Jeder muss zum entsprechenden Zeitpunkt eine Bestellung aufgeben und die entsprechende Menge an Waren bezahlen. Der Gratis-Bestellbetrag wird in Form von roten Umschlägen mit gleichen Beträgen verteilt. Als Nächstes erkläre ich Ihnen, wie Sie im Jahr 2024 den roten Umschlag für die kostenlose Bestellung von Taobao erhalten: Schnappen Sie sich ihn. Für Benutzer, die kostenlos sind, wird die Qualifikation für den roten Umschlag auf das Karten- und Couponpaket ausgestellt, das sich im Aktivierungszustand befindet; Die Webversion von Taobao verfügt derzeit nicht über das Karten- und Coupon-Paket und zeigt nur die Gewinnaufzeichnungen der kostenlosen Bestellveranstaltung an. Das Karten- und Coupon-Paket befindet sich in [Taobao APP – Mein Taobao] – Meine Rechte – Roter Umschlag. So erhalten Sie kostenlose rote Umschläge von Taobao 20241. Für Benutzer, die kostenlose Bestellungen erhalten, werden die Qualifikationen für rote Umschläge an die Karten- und Couponpakete verteilt, die auf Aktivierung warten 2. Die Webversion von Taobao ist derzeit nicht verfügbar haben Karten- und Coupon-Pakete und zeigen nur die Gewinnaufzeichnungen der kostenlosen Bestellaktivitäten an;3 Das Karten-Coupon-Paket befindet sich in [Taobao APP-My Taobao-My Rights-Red Envelope].

So lehnen Sie Nachrichten von Fremden auf Taobao ab So lehnen Sie Nachrichten von Fremden auf Taobao ab Mar 02, 2024 am 08:40 AM

Während der Nutzung von Taobao erhalten wir Nachrichten von einigen seltsamen Benutzern. Im Folgenden erfahren Sie, wie Sie die Ablehnung von Nachrichten von Fremden einrichten. 1. Nachdem Sie Taobao auf Ihrem Mobiltelefon geöffnet haben, um die Benutzeroberfläche aufzurufen, klicken Sie unten auf das Element „Nachricht“, um dorthin zu wechseln, und klicken Sie dann oben rechts auf das Symbol „+“, um es zu öffnen. 2. Unter dem Symbol öffnet sich ein Fenster. Klicken Sie darauf und wählen Sie den Punkt „Nachrichteneinstellungen“ aus. 3. Auf der Seite mit den Nachrichteneinstellungen gibt es „Chat-Einstellungen für Fremde“. Klicken Sie darauf, um sie aufzurufen. 4. Schließlich sehen Sie in der von Ihnen aufgerufenen Benutzeroberfläche die Funktion „Nachrichten von Fremden ablehnen“. Klicken Sie auf die entsprechende Schaltfläche dahinter. Wenn die Schaltfläche auf Farbe eingestellt ist, ist sie aktiviert. Wenn Sie Taobao verwenden, erhalten Sie keine Nachrichten mehr von unbekannten Benutzern.

So deaktivieren Sie die passwortfreie Zahlung auf Taobao. So brechen Sie die Einstellungsmethode für die passwortfreie Zahlung ab. So deaktivieren Sie die passwortfreie Zahlung auf Taobao. So brechen Sie die Einstellungsmethode für die passwortfreie Zahlung ab. Mar 12, 2024 pm 12:07 PM

Es gibt so viele Funktionen in der Taobao-App, dass jeder ein besseres Einkaufserlebnis haben kann. Die große Anzahl an Produkttypen kann den Einkaufsbedürfnissen verschiedener Benutzer gerecht werden Sie können nach Kategorien suchen oder direkt nach diesen Produkten suchen. Wir bieten Ihnen natürlich alles, was Sie wollen Wenn Sie hier einkaufen, finden Sie hier eine Vielzahl von Einkaufsmethoden, mit denen Sie wählen können, und einige mögen sie nicht so sehr, aber ich denke, die Sicherheit ist nicht so hoch . Natürlich kann jeder jederzeit kündigen.

So deaktivieren Sie personalisierte Werbung auf Taobao So deaktivieren Sie personalisierte Werbung auf Taobao Mar 01, 2024 pm 12:49 PM

Wenn wir Taobao zum Einkaufen nutzen, erhalten wir häufig personalisierte Werbeinhalte, die von der Software gepusht werden. Im Folgenden erfahren Sie, wie Sie personalisierte Empfehlungsanzeigen deaktivieren. Öffnen Sie die Taobao-App auf Ihrem Telefon, klicken Sie unten rechts auf „Mein Taobao“ und dann oben rechts auf das Zahnradsymbol, um die Seite „Einstellungen“ aufzurufen. 2. Nachdem Sie zur Einstellungsseite von Taobao gelangt sind, suchen Sie nach „Datenschutz“ und klicken Sie darauf, um es aufzurufen. 3. Auf der Datenschutzseite sehen Sie eine „Anzeigenverwaltung“. Klicken Sie darauf, um sie aufzurufen. 4. Als nächstes gibt es unten auf der eingegebenen Werbeverwaltungsseite eine „Personalisierte Anzeigenempfehlung“. Klicken Sie dahinter auf den Schieberegler, um die Schaltfläche auf Grau-Weiß zu stellen. 5. Zu diesem Zeitpunkt wird ein Fenster auf der Seite angezeigt. Nachdem Sie auf das Element „Schließen bestätigen“ geklickt haben, wird Taobao angezeigt

So überprüfen Sie die Gesamtverbrauchsmenge auf Taobao. So überprüfen Sie die Gesamtverbrauchsmenge So überprüfen Sie die Gesamtverbrauchsmenge auf Taobao. So überprüfen Sie die Gesamtverbrauchsmenge Mar 12, 2024 pm 03:07 PM

Wenn wir normalerweise online einkaufen müssen, wählen wir alle Taobao als Plattform, die alle unsere Einkaufsbedürfnisse vollständig erfüllen kann. Es verfügt über viele Ressourcen für verschiedene Waren, und es werden wirklich alle Arten von Waren gesammelt Diese Plattform hat festgestellt, dass es hier viele Produktkategorien gibt, die Sie nach Ihren Wünschen auswählen können. Es gibt also definitiv viele Produkte Die Preise dieser Produkte können sehr unterschiedlich sein, sodass jeder sie jederzeit überprüfen kann. Wie viel Geld haben Sie hier ausgegeben? Sie müssen sehr neugierig sein. Hier sind die Redakteure

So deaktivieren Sie die Erinnerung an rote Umschläge auf Taobao So deaktivieren Sie die Erinnerung an rote Umschläge auf Taobao Apr 01, 2024 pm 06:25 PM

Taobao ist eine häufig verwendete Online-Shopping-Software, die Sie normalerweise bei Taobao aufgeben und kaufen. Einige Freunde möchten diese Funktion deaktivieren, also beeilen Sie sich und schauen Sie sich die PHP-Chinesen an Website. Schauen Sie mal vorbei. Liste der Schritte zum Deaktivieren der Erinnerungen an rote Umschläge auf Taobao 1. Öffnen Sie das persönliche Zentrum der Taobao-APP und wählen Sie die Schaltfläche [Einstellungen], um die Seite aufzurufen. 2. Suchen Sie die Option [Nachrichtenbenachrichtigung]. Hier können Sie den Nachrichten-Push-Schalter auswählen und den Schalter ausschalten. 3. Oder Sie können die Benachrichtigungsberechtigung der Taobao-App über die Einstellungsseite Ihres Mobiltelefons deaktivieren, sodass nicht alle Nachrichten von Taobao in den Push gelangen und erst nach dem Einschalten angezeigt werden können. 4. Benutzer können festlegen, welche Arten von Nachrichten sie erhalten möchten, was die Verwendung vereinfacht.

So aktivieren Sie die Zahlung per Fingerabdruck auf Taobao So aktivieren Sie die Zahlung per Fingerabdruck auf Taobao Mar 01, 2024 am 08:58 AM

Bei Verwendung von Taobao können wir eine Fingerabdruck-Zahlungsfunktion aktivieren. Hier stellen wir die spezifische Betriebsmethode vor. 1. Nachdem Sie „Taobao“ auf Ihrem Mobiltelefon geöffnet haben, klicken Sie auf „Mein Taobao“ in der unteren rechten Ecke der Seite, um sie aufzurufen, und klicken Sie dann auf das Symbol „Einstellungen“ in der oberen rechten Ecke, um sie zu öffnen. 2. Klicken Sie zum Aufrufen auf der Einstellungsseite auf den Punkt „Zahlung“. 3. Klicken Sie auf der Zahlungsseite auf den Punkt „Zahlung per Gesichts-/Fingerabdruck“, um teilzunehmen. 4. Als nächstes wird auf der biometrischen Zahlungsseite, die Sie aufrufen, hinter „Zahlung per Fingerabdruck“ eine Schaltfläche zum Umschalten angezeigt. Klicken Sie darauf, um sie einzuschalten. 5. Auf der letzten Seite werden Sie aufgefordert, das Zahlungspasswort einzugeben, um Ihre Identität zu bestätigen. Nach bestandener Überprüfung erscheint auf der Seite eine Erinnerung mit der Meldung „Erfolgreiche Aktivierung“ und Sie können die Zahlungsfunktion per Fingerabdruck in Taobao verwenden.

See all articles