日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【爬虫】问题集-豆瓣电影

發布時間:2024/8/1 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【爬虫】问题集-豆瓣电影 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

【爬蟲】問題集-豆瓣電影

文章目錄

  • 【爬蟲】問題集-豆瓣電影
    • 問題1 pip install numpy命令行輸入的時候報錯 OSError: [WinError 87] 參數錯誤
    • 問題2 WebDriverException: Message: unknown error: bad inspector message
    • 問題3 如何獲取字符串相同名稱的變量值
    • 問題4 chrome添加參數

本文章用于豆瓣電影爬取信息過程中出現的問題
全部內容見筆者的github

問題1 pip install numpy命令行輸入的時候報錯 OSError: [WinError 87] 參數錯誤

  • 場景

    • 用conda創建一個虛擬的環境:conda create -n scrapy python=3
  • 問題

    • 運行爬蟲代碼時,出現 OSError: [WinError 87] The parameter is incorrect
  • 描述

    • python=3默認安裝3.8,有些python庫并不支持python3.8
  • 解決方案

    • conda create -n scrapy python=3.7
  • 問題2 WebDriverException: Message: unknown error: bad inspector message

  • 場景

    • 用python,selenium構建爬蟲獲取網頁信息,并用xpath進行頁面內容解析
    • url: https://movie.douban.com/subject/3878007/
  • 問題

    • webdriver能加載網站,但不能正確返回頁面內容
  • WebDriverException: Message: unknown error: bad inspector message
    in
    3 driver = webdriver.Chrome(options=chrome_options)
    4 driver.get(url)
    ----> 5 html = driver.page_source
    UnicodeEncodeError: ‘utf-8’ codec can’t encode character ‘\ud83d’ in position 76660: surrogates not allowed
    html = HTML(url=self.url, html=content.encode(DEFAULT_ENCODING), default_encoding=DEFAULT_ENCODING)

  • 描述

    • 爬蟲在爬取頁面中含有emoji字符串時不能正確返回html
    • driver.page_source編碼使用的是utf-8,其最大的一個字符是3個字節,而emoji存儲需要4個字節
  • 解決方案

    • 不返回page_source,直接通過find_element_by_xpath來獲取內容
    • 使用requests獲取頁面內容
  • 問題3 如何獲取字符串相同名稱的變量值

  • 場景

    • 爬蟲獲取相應信息后,將變量值添加到DataFrame
  • 問題

    • 獲取字符串相同名稱的變量值
  • 描述

    • 爬取內容時,將需要獲取的信息以字符串的形式存儲在可迭代的數據結構中,需要用時通過循環訪問可迭代數據結構即可
  • 解決方案

    • 用python內置的eval()函數,例如eval(‘egg’)返回egg變量的值
  • 問題4 chrome添加參數

    from selenium.webdriver.chrome.options import Options
    from fake_useragent import UserAgent

    chrome_options = Options()
    ua = UserAgent()
    user_agent = {“user-agent”: ua.random}

    chrome_options.add_argument(f’–user-agent={user_agent}’) # 添加請求頭中的用戶代理
    chrome_options.add_argument(’–disable-gpu’) # 禁用GPU
    chrome_options.add_argument(’–headless’) # 無圖形界面
    chrome_options.add_argument(’–blink-settings=imagesEnabled=false’) # 禁止圖片加載
    chrome_options.add_argument(’–window-size=800,900’) # 設定屏幕分辨率
    chrome_options.add_experimental_option(‘excludeSwitches’, [‘enable-automation’]) # 設定瀏覽器調控模式

    總結

    以上是生活随笔為你收集整理的【爬虫】问题集-豆瓣电影的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。