1. 程式人生 > >第一週測驗:網路爬蟲之規則

第一週測驗:網路爬蟲之規則

1單選(1分)
下面哪個不是Python Requests庫提供的方法?
A、.post()
B、.push()
C、.get()
D、.head()
答案:B

2單選(1分)
Requests庫中,下面哪個是檢查Response物件返回是否成功的狀態屬性?
A、.headers
B、.status
C、.status_code
D、.raise_for_status
答案:C

3單選(1分)
Requests庫中,下面哪個屬性代表了從伺服器返回HTTP協議頭所推薦的編碼方式?
A、.text
B、.apparent_encoding
C、.headers
D、.encoding
答案:D

4單選(1分)
Requests庫中,下面哪個屬性代表了從伺服器返回HTTP協議內容部分猜測的編碼方式?
A、.text
B、.encoding
C、.apparent_encoding
D、.headers
答案:C

5單選(1分)
Requests庫中,下面哪個是由於DNS查詢失敗造成的獲取URL異常?
A、requests.Timeout
B、requests.HTTPError
C、requests.URLRequired
D、requests.ConnectionError
答案:D

7單選(1分)
在Requests庫的get()方法中,能夠定製向伺服器提交HTTP請求頭的引數是什麼?
A、data
B、cookies
C、headers
D、json
答案:C

8單選(1分)
在Requests庫的get()方法中,timeout引數用來約定請求的超時時間,請問該引數的單位是什麼?
A、分鐘
B、微秒
C、毫秒
D、秒
答案:D

9單選(1分)
下面哪個不是網路爬蟲帶來的負面問題?
A、法律風險
B、隱私洩露
C、效能騷擾
D、商業利益
答案:D

10單選(1分)
下面哪個說法是不正確的?
A、Robots協議可以作為法律判決的參考性“行業共識”。
B、Robots協議告知網路爬蟲哪些頁面可以抓取,哪些不可以。
C、Robots協議是網際網路上的國際準則,必須嚴格遵守。
D、Robots協議是一種約定。
答案:C

11單選(1分)
如果一個網站的根目錄下沒有robots.txt檔案,下面哪個說法是不正確的?
A、網路爬蟲應該以不對伺服器造成效能騷擾的方式爬取內容。
B、網路爬蟲可以不受限制的爬取該網站內容並進行商業使用。
C、網路爬蟲可以肆意爬取該網站內容。
D、網路爬蟲的不當爬取行為仍然具有法律風險。
答案:B

12單選(1分)
百度的關鍵詞查詢提交介面如下,其中,keyword代表查詢關鍵詞:
http://www.baidu.com/s?wd=keyword
請問,提交查詢關鍵詞該使用Requests庫的哪個方法?
A、.patch()
B、.get()
C、.post()
D、.put()
答案:B

13單選(1分)
獲取網路上某個URL對應的圖片或視訊等二進位制資源,應該採用Response類的哪個屬性?
A、.text
B、.head
C、.content
D、.status_code
答案:C

14單選(1分)
Requests庫中的get()方法最常用,下面哪個說法正確?
A、HTTP協議中GET方法應用最廣泛,所以,get()方法最常用。
B、伺服器因為安全原因對其他方法進行限制,所以,get()方法最常用。
C、get()方法是其它方法的基礎,所以最常用。
D、網路爬蟲主要進行資訊獲取,所以,get()方法最常用。
答案:B

15單選(1分)
下面哪些功能網路爬蟲做不到?
A、爬取網路公開的使用者資訊,並彙總出售。
B、爬取某個人電腦中的資料和檔案。
C、分析教務系統網路介面,用程式在網上搶最熱門的課。
D、持續關注某個人的微博或朋友圈,自動為新發布的內容點贊。
答案:B

16填空(2分)

try:
    r = requests.get(url)
    r.__________________()
    r.encoding = r.apparent_encoding
    print(r.text)
except:
    print("Error")

請在上述網路爬蟲通用程式碼框架中,填寫空格處的方法名稱。

答案:raise_for_status

17填空(2分)
在HTTP協議中,能夠對URL進行區域性更新的方法是什麼?
得分/總分

答案:PATCH

18填空(2分)

>>> kv = {'k': 'v', 'x': 'y'} 
>>> r = requests.request('GET', 'http://python123.io/ws', params=kv) 
>>> print(r.url)

上述程式碼的輸出結果是什麼?
答案:http://python123.io/ws?k=v&x=y

19填空(2分)
某一個網路爬蟲叫NoSpider,編寫一個Robots協議文字,限制該爬蟲爬取根目錄下所有.html型別檔案,但不限制其它檔案。請填寫robots.txt中空格內容:

User-agent:NoSpider
Disallow:___________

答案:/*.html

20填空(2分)

>>>import requests
>>>r =  requests.get(url)

請填寫下面語句的空格部分,使得該語句能夠輸出向伺服器提交的url連結。

>>>print(r.____________)

答案:url