第六天打卡,今天繼續上次的網頁爬取的內容,上次分析了相關的引數內容,這次我在網上查詢了相關的爬蟲請求ajax的請求,完成資料的爬取。
其中我才用的是scrapy 的爬蟲模板來進行的爬取相關的網頁,其中遇到了一些問題通過詢問同學以及上網查詢,最收取到了相關的資訊。
爬取源**:
import源**這個**還有一些地方沒有看懂,只是嘗試執行可以是實現,之後將研究下具體**的作用,這個**著實讓我有點費勁。最後附一張我費了半天勁弄出來的三萬多條資料。json
import
random
import
string
import
scrapy
class
letterspider(scrapy.spider):
name = '
letter
'allowed_domains = ['
www.beijing.gov.cn']
#custome_setting可用於自定義每個spider的設定,而setting.py中的都是全域性屬性的,當你的
#scrapy工程裡有多個spider的時候這個custom_setting就顯得很有用了
custom_settings =
}#需要重寫start_requests方法
defstart_requests(self):
#網頁裡ajax鏈結
url = "
"#所有請求集合
requests =
#這裡只模擬一頁range(0, 1)
for i in range(0, 33750,1000):
random_random =random.random()
#封裝post請求體引數
my_data =
#模擬ajax傳送post請求
#可以利用json庫解析返回來得資料,在此省略
jsonbody =json.loads(response.body)
#拿到資料,再處理就簡單了。不再贅述
(jsonbody)
size = jsonbody['
pagecond
']['
size']
data = jsonbody['
maillist']
listdata ={}
for i in
range(size):
(i) listdata[
'letter_type
'] = data[i]['
letter_type']
listdata[
'original_id
'] = data[i]['
original_id']
listdata[
'catalog_id
'] =str(data[i]['
catalog_id'])
listdata[
'letter_title
'] = data[i]['
letter_title']
listdata[
'create_date
'] = data[i]['
create_date']
listdata[
'org_id
'] = data[i]['
org_id']
listdata[
'letter_status
'] = data[i]['
letter_status']
listdata[
'isreply
'] = data[i]['
isreply']
yield
listdata
print(listdata)
OpenCV寒假學習day06
int cy h 2 int cx w 2 rect rect cx 100,cy 100,200,200 mat roi src rect imshow roi roi 先用rect類來獲取中的roi區域後再用mat類來定義roi。mat image roi.clone modify roi ro...
學習筆記06
do while 水仙花 從100到999 各個位數的立方和相加等於這個數本身就是乙個水仙花數 include intmain void i while i 999 return0 pow 用來計算以x為底的y次方值 include 上述式子可改為 if pow a,3 pow b,3 pow c,...
寒假學習筆記03
python正規表示式 正規表示式是各種字串操作的強大工具。正規表示式是一種特定於領域的語言 dsl 作為大多數現代程式語言的庫而不僅僅是 python。正規表示式對於以下兩種主要任務是很有用的 驗證字串是否匹配模式 例如,字串具有電子郵件位址的格式 對字串中進行替換 如將所有美式拼寫改為英式拼寫 ...