導航:首頁 > 編程語言 > pythondemo例子

pythondemo例子

發布時間:2023-01-07 17:24:49

python新手求助 關於爬蟲的簡單例子

#coding=utf-8
from bs4 import BeautifulSoup
with open('index.html', 'r') as file:
fcontent = file.read()

sp = BeautifulSoup(fcontent, 'html.parser')

t = 'new_text_for_replacement'

# replace the paragraph using `replace_with` method
sp.find(itemprop='someprop').replace_with(t)

# open another file for writing
with open('output.html', 'w') as fp:
# write the current soup content
fp.write(sp.prettify())
如果要替換段落的內容而不是段落元素本身,可以設置.string屬性。

sp.find(itemprop='someprop').string = t
贊0收藏0評論0分享
用戶回答回答於 2018-07-26
問題取決於你搜索標準的方式,嘗試更改以下代碼:

print(sp.replace(sp.find(itemprop="someprop").text,t))
對此:

print(sp.replace(sp.find({"itemprop":"someprop"}).text,t))

# coding:utf-8

from bs4 import BeautifulSoup
import requests
import os
url = 'https://'
r = requests.get(url)
demo = r.text # 伺服器返回響應

soup = BeautifulSoup(demo, "html.parser")
"""
demo 表示被解析的html格式的內容
html.parser表示解析用的解析器
"""
# 輸出響應的html對象
ab = list()
with open("D:\\temp\\mii.txt","w+",encoding="utf-8") as xxx:

for mi in soup.find_all('a'):
ab.append(mi.prettify()) # 使用prettify()格式化顯示輸出
# xxx.writelines(str(mi))
xxx.writelines(ab)
xxx.close()

Ⅱ Python編程基礎之(五)Scrapy爬蟲框架

經過前面四章的學習,我們已經可以使用Requests庫、Beautiful Soup庫和Re庫,編寫基本的Python爬蟲程序了。那麼這一章就來學習一個專業的網路爬蟲框架--Scrapy。沒錯,是框架,而不是像前面介紹的函數功能庫。

Scrapy是一個快速、功能強大的網路爬蟲框架。

可能大家還不太了解什麼是框架,爬蟲框架其實是實現爬蟲功能的一個軟體結構和功能組件的集合。

簡而言之, Scrapy就是一個爬蟲程序的半成品,可以幫助用戶實現專業的網路爬蟲。

使用Scrapy框架,不需要你編寫大量的代碼,Scrapy已經把大部分工作都做好了,允許你調用幾句代碼便自動生成爬蟲程序,可以節省大量的時間。

當然,框架所生成的代碼基本是一致的,如果遇到一些特定的爬蟲任務時,就不如自己使用Requests庫搭建來的方便了。

PyCharm安裝

測試安裝:

出現框架版本說明安裝成功。

掌握Scrapy爬蟲框架的結構是使用好Scrapy的重中之重!

先上圖:

整個結構可以簡單地概括為: 「5+2」結構和3條數據流

5個主要模塊(及功能):

(1)控制所有模塊之間的數據流。

(2)可以根據條件觸發事件。

(1)根據請求下載網頁。

(1)對所有爬取請求進行調度管理。

(1)解析DOWNLOADER返回的響應--response。

(2)產生爬取項--scraped item。

(3)產生額外的爬取請求--request。

(1)以流水線方式處理SPIDER產生的爬取項。

(2)由一組操作順序組成,類似流水線,每個操作是一個ITEM PIPELINES類型。

(3)清理、檢查和查重爬取項中的HTML數據並將數據存儲到資料庫中。

2個中間鍵:

(1)對Engine、Scheler、Downloader之間進行用戶可配置的控制。

(2)修改、丟棄、新增請求或響應。

(1)對請求和爬取項進行再處理。

(2)修改、丟棄、新增請求或爬取項。

3條數據流:

(1):圖中數字 1-2

1:Engine從Spider處獲得爬取請求--request。

2:Engine將爬取請求轉發給Scheler,用於調度。

(2):圖中數字 3-4-5-6

3:Engine從Scheler處獲得下一個要爬取的請求。

4:Engine將爬取請求通過中間件發送給Downloader。

5:爬取網頁後,Downloader形成響應--response,通過中間件發送給Engine。

6:Engine將收到的響應通過中間件發送給Spider處理。

(3):圖中數字 7-8-9

7:Spider處理響應後產生爬取項--scraped item。

8:Engine將爬取項發送給Item Pipelines。

9:Engine將爬取請求發送給Scheler。

任務處理流程:從Spider的初始爬取請求開始爬取,Engine控制各模塊數據流,不間斷從Scheler處獲得爬取請求,直至請求為空,最後到Item Pipelines存儲數據結束。

作為用戶,只需配置好Scrapy框架的Spider和Item Pipelines,也就是數據流的入口與出口,便可完成一個爬蟲程序的搭建。Scrapy提供了簡單的爬蟲命令語句,幫助用戶一鍵配置剩餘文件,那我們便來看看有哪些好用的命令吧。

Scrapy採用命令行創建和運行爬蟲

PyCharm打開Terminal,啟動Scrapy:

Scrapy基本命令行格式:

具體常用命令如下:

下面用一個例子來學習一下命令的使用:

1.建立一個Scrapy爬蟲工程,在已啟動的Scrapy中繼續輸入:

執行該命令,系統會在PyCharm的工程文件中自動創建一個工程,命名為pythonDemo。

2.產生一個Scrapy爬蟲,以教育部網站為例http://www.moe.gov.cn:

命令生成了一個名為demo的spider,並在Spiders目錄下生成文件demo.py。

命令僅用於生成demo.py文件,該文件也可以手動生成。

觀察一下demo.py文件:

3.配置產生的spider爬蟲,也就是demo.py文件:

4.運行爬蟲,爬取網頁:

如果爬取成功,會發現在pythonDemo下多了一個t20210816_551472.html的文件,我們所爬取的網頁內容都已經寫入該文件了。

以上就是Scrapy框架的簡單使用了。

Request對象表示一個HTTP請求,由Spider生成,由Downloader執行。

Response對象表示一個HTTP響應,由Downloader生成,有Spider處理。

Item對象表示一個從HTML頁面中提取的信息內容,由Spider生成,由Item Pipelines處理。Item類似於字典類型,可以按照字典類型來操作。

Ⅲ Python循環簡單Demo案例:

目錄

一、使用while循環輸出一個九九乘法表

如圖輸出結果:

二、使用循環(任意一種)計算0--100之間所有奇數的和

如圖輸出結果:

三、用while循環計算1--100之間的整數和(包含1和100)

如圖輸出結果:​

四、使用for循環,輸入輸出三角形

4.1 for循環

4.2while循環

如圖輸出:

@希望能幫到大家!

Ⅳ Python屏幕操作

實現對電腦屏幕自動點擊操作,減少工作量。python 環境3.6 windows 10。目前教程比較多的是PyUserinput 但是pyhook是一個坑啊,不兼容3.x 解決比較麻煩。因此找到了pyautogui,它的功能比較多有興趣的可以查看的文檔,我只選擇了它的點擊功能。git地址 在此 。

window下不需要其他依賴,但是目前直接用pip安裝pyautogui,其中pygetwindow模塊會因為編碼問題報錯。需要先安裝pygetwindow 。
輸入如下命令
pip install pygetwindow==0.0.1
然後使用pip 安裝pyautogui。
pip install autogui.
即可完成pyautogui的安裝。
簡單的demo(偷偷的):

比較簡單的例子。有興趣的朋友可以多研究研究哦。
還有其他功能的demo在文檔中,感興趣可以多看看。

Ⅳ Python Flask 快速部署網頁demo

最近看到一個 Python 的輕量化的 web 框架 Flask,恰好我有一些做的東西需要做成 demo給別人看,就簡單的做了一個例子,方便以後再用的時候參考。

引用 Flask 官網的例子

運行一下:

Flask 安裝可以參考: http://docs.jinkan.org/docs/flask/quickstart.html#a-minimal-application

這里一個demo,用戶從網頁上輸入一句話,點擊發送之後,返回這個字元串的倒序。以這個例子為基礎,可以擴展出很多功能,比如聊天機器人、查詢數據等等,只要改一下對輸入的處理函數就可以了。

Ⅵ 一道簡單的python編程

def demo(m, n):
for ji in range(1, m + 1):
tu = m - ji
if ji * 2 + tu * 4 == n:
return (ji, tu)
else:
return (-1, -1)


m, n = input('輸入雞兔數,腳數:').split(',')
if demo(int(m), int(n)) == (-1, -1):
print('輸入數據出錯!')
else:
print('%d只雞,%d只兔。' % demo(int(m), int(n)))

Ⅶ python新手關於爬蟲的簡單例子

以下代碼調試通過:

#coding=utf-8
importurllib
defgetHtml(url):
page=urllib.urlopen(url)
html=page.read()
returnhtml
html=getHtml("https://.com/")
printhtml

運行效果:

Ⅷ Python語言命令行參數解析接收參數執行腳本的三種方法

在Windows系統上,Python腳本文件當然雙擊就能直接運行。不過我們往往需要在執行腳本的時候還要添加相應的參數,另外在Ubuntu系統中,我們執行文件往往和其他系統或用戶命令一樣,需要在終端中輸入,參數當然也要一並加上。所以機智客這里說的意思是,執行Python腳本(.py文件)時候需要輸入相應參數,這樣程序怎麼寫的方法。

上面這么說可能有點不明不白的,或者有朋友會用但未必知道命令行解析這種表達方式。舉個例子,比如我們在執行一個腳本文件的時候,可能會在CMD或者終端中輸入python demo.py 10或者python demo.py --separator 10後面這個數字就是參數。我們要編寫這樣的腳本或者函數,有哪些方法呢?這里列舉三種常用的。

一個是用系統模塊sys。引入模塊語句是import sys。也就是Python語言的內置庫中的sys.argv。argv通常有argv[0],argv[1],argv[2]這樣幾個參數。基本使用方法是m_sil_len = int(sys.argv[1])傳入第一個參數,sil_th = int(sys.argv[2])傳入第二個參數。如果是簡單一點的參數或者腳本,我們引入了sys。可以直接用這個傳入參數。

一種是用模塊argparse來實現,這是標准庫中推薦的命令行解析模塊。引入模塊語句是import argparse。基本使用方法是引入模塊後,先parser = argparse.ArgumentParser()創建對象,然後調用方法添加參數parser.add_argument("jzk", help="這是關於參數的說明", type=int),之後args = parser.parse_args()使用解析就可以用了。機智客看到這個方法在很多項目腳本中使用。我們在閱讀機器學習AI之類的開源項目,就會發現很多人用的都是這個方法。

還有一個就是用fire模塊,用於生成命令行界面的工具。引入模塊語言是import fire。它默認以-為參數分隔符的。基本使用方法是fire.Fire()。這個不僅可以做命令行的參數解析,還可以還給一個類class添加命令行。所以使用時候括弧里填入函數名或者類名即可,也就是裡面的參數可以是其他Python對象。

Ⅸ python 對隨機幾個數求和demo()

這個demo可能就是一個自定義的函數,demo是示例的意思

比如
def get_sum(a,b,c):
sum_value = a + b + c
return sum_value
get_sum(1,2,3)

Ⅹ Python函數簡單Demo案例

目錄

一、寫一個函數求三個數的和,並返回結果

二、寫一個函數求三個數的平均值,並返回結果

三、再寫一個函數求每個數與平均值之間的差,並返回結果

閱讀全文

與pythondemo例子相關的資料

熱點內容
公式保護後加密不了 瀏覽:82
java跳轉到jsp 瀏覽:819
327平方根演算法 瀏覽:216
win7美化命令行終端 瀏覽:797
免加密狗圖片 瀏覽:485
一隻透明的鳥是什麼app 瀏覽:817
空氣壓縮機油批發商 瀏覽:69
linuxifexist 瀏覽:4
加密tf卡拷入文件 瀏覽:399
山西php工資 瀏覽:673
福州看病預約用什麼小程序app 瀏覽:238
php保留兩位小數不四捨五入 瀏覽:292
黑馬程序員路徑大全 瀏覽:1000
saas平台PHP 瀏覽:333
雲伺服器科學計算配置怎麼選 瀏覽:649
jar解壓命令 瀏覽:609
php正則問號 瀏覽:299
無線已加密不可上網是怎麼了 瀏覽:465
什麼app可以免費做手機 瀏覽:376
異性下載什麼app 瀏覽:682