Python 使用xpath爬蟲查詢身份證資訊和手機號資訊並寫入Excel表格
一.這個程式在網上還是有很多範例的,所以我就將大家的總結一下,然後形成自己的小程式,廢話少說,上程式碼
import time
import requests
from lxml import etree # xpath模組
import pandas as pd # 寫入Excel模組
# 獲取身份資訊
def main():
time1 = time.time()
# 將要獲取的身份證號
df = pd.read_csv('C:/Users/admin/Desktop/shen.txt', sep='\t', header=None, dtype=str, na_filter=False) # 開啟存放身份證號的txt檔案
print(df)
idcard1=[] # 身份證列表
gender1 = [] # 性別列表
birthday1 = [] # 生日列表
address1 = [] # 地址列表
# 迴圈獲取身份證資訊
for i in range(0,len(df)):
try:
if len(df.iloc[i,0]) == 18:
print(df.iloc[i,0]) # 獲取每行的身份證號
idcard1.append(df.iloc[i,0]) # 記錄身份證號
url="http://qq.ip138.com/idsearch/index.asp?action=idcard&userid="+df.iloc[i,0]+"&B1=%B2%E9+%D1%AF" # 發起請求
html=requests.get(url).content # 接受返回值
selector=etree.HTML(html) # 處理返回值
sex=selector.xpath('//td[@class="tdc2"][1]/text()') # 匹配指定元素
print(sex[0]) # 性別
print(sex[1]) # 生日
print(sex[-1]) # 地址
gender1.append(sex[0])
birthday1.append(sex[1])
address1.append(sex[-1])
else:
idcard1.append(df.iloc[i, 0])
gender1.append("空")
birthday1.append("空")
address1.append("空")
except Exception as e:
print(e)
# 計算爬蟲時間
time2 = time.time()
print('爬蟲結束!總共耗時:' + str(time2 - time1) + 's')
# 寫入表格
time3 = time.time()
data = pd.DataFrame({'id': idcard1,'grender': gender1,'birthday': birthday1,'address': address1})
pd.DataFrame.to_excel(data, "D:\\1.xls", header=True, encoding='gbk', index=False)
time4 = time.time()
print("寫入表格完成!總共耗時:" + str(time4 - time3) + "s")
# 獲取手機號資訊
def main2():
time1 = time.time()
# 將要獲取的身份證號
df = pd.read_csv('C:/Users/admin/Desktop/shouji.txt', sep='\t', header=None, dtype=str, na_filter=False) # 開啟存放身份證號的txt檔案
print(df)
phone1=[] # 手機號列表
address1 = [] # 地址列表
# 迴圈獲取身份證資訊
for i in range(0,len(df)):
try:
if len(df.iloc[i,0]) == 15:
print(df.iloc[i,0][-11:]) # 獲取每行的身份證號
phone1.append(df.iloc[i,0]) # 記錄身份證號
url = "http://www.ip138.com:8080/search.asp?mobile="+df.iloc[i,0][-11:]+"&action=mobile" # 發起請求
html=requests.get(url).content # 接受返回值
selector=etree.HTML(html) # 處理返回值
sex=selector.xpath('//tr[@class="tdc"][2]/td[@class="tdc2"]/text()') # 匹配指定元素
for i in sex:
print(i)
address1.append(i)
else:
phone1.append(df.iloc[i, 0])
address1.append("空")
except Exception as e:
print(e)
# 計算爬蟲時間
time2 = time.time()
print('爬蟲結束!總共耗時:' + str(time2 - time1) + 's')
# 寫入表格
time3 = time.time()
data = pd.DataFrame({'id': phone1,'address': address1})
pd.DataFrame.to_excel(data, "D:\\1.xls", header=True, encoding='gbk', index=False)
time4 = time.time()
print("寫入表格完成!總共耗時:" + str(time4 - time3) + "s")
# 主函式入口
if __name__ == '__main__':
main()
總結:
1.在這次過程中,遇到的問題就是如何使用xpath匹配元素,由於太長時間沒有使用xpath了,所以有點不太會用了,百度一下,需要下載一個外掛
2.在執行程式中,需要安裝需要的模組,Xpath和Excel模組
二.xpath安裝步驟
1.下載xpath外掛
xpath連結:https://pan.baidu.com/s/1dFgzBSd 密碼:zwvb,感謝這位網友,我從這拿到了。
2.在谷歌瀏覽器中“更多工具”找到這個“擴充套件程式”選項選單,進入其中
3.進入到擴充套件外掛的介面,把下載好的離線xpath外掛
拖到這個擴充套件介面,他就會有提示,鬆開滑鼠直接安裝即可。安裝成功之後重啟一下谷歌瀏覽器即可
4.使用快捷鍵ctrl+shift+x調出xpath。
相關文章
- 利用 Python 爬蟲實現快遞物流資訊查詢Python爬蟲
- python爬蟲--招聘資訊Python爬蟲
- 使用捕獲 獲取身份證號的資訊
- Python爬蟲——Xpath和lxmlPython爬蟲XML
- Python爬蟲之資料解析(XPath)Python爬蟲
- python爬蟲:XPath語法和使用示例Python爬蟲
- 身份證資訊
- Python爬蟲抓取股票資訊Python爬蟲
- Python爬蟲-xpathPython爬蟲
- Python爬蟲——XPathPython爬蟲
- 爬蟲實戰(二):Selenium 模擬登入並爬取資訊爬蟲
- python爬蟲——爬取大學排名資訊Python爬蟲
- python爬蟲--爬取鏈家租房資訊Python爬蟲
- 查詢使用者登入資訊sqlSQL
- 小白學 Python 爬蟲(25):爬取股票資訊Python爬蟲
- Python爬取動態載入的視訊(梨視訊,xpath)Python
- Python爬蟲教程-22-lxml-etree和xpath配合使用Python爬蟲XML
- Python 爬蟲(六):使用 Scrapy 爬取去哪兒網景區資訊Python爬蟲
- 「資料分析」2種常見的反爬蟲策略,資訊驗證和動態反爬蟲爬蟲
- Python爬蟲抓取知乎所有使用者資訊Python爬蟲
- Python爬蟲爬取淘寶,京東商品資訊Python爬蟲
- 極兔快遞一鍵查詢並匯出資訊到表格的方法
- Python爬蟲實戰系列4:天眼查公司工商資訊採集Python爬蟲
- jpa 聯合查詢資料,查詢使用者資訊與部門資訊
- excel表格怎麼提取手機號碼和姓名?Excel
- python爬蟲抓取哈爾濱天氣資訊(靜態爬蟲)Python爬蟲
- 爬蟲之xpath的使用爬蟲
- Python匯入Excel表格資料並以字典dict格式儲存PythonExcel
- Python爬蟲之XPath語法Python爬蟲
- 【爬蟲】利用Python爬蟲爬取小麥苗itpub部落格的所有文章的連線地址並寫入Excel中(2)爬蟲PythonExcel
- 用 python 製作全國身份證號驗證及查詢系統Python
- Python爬蟲實戰:爬取淘寶的商品資訊Python爬蟲
- python 爬蟲 5i5j房屋資訊 獲取並儲存到資料庫Python爬蟲資料庫
- C++實現查詢本機資訊並且上報C++
- Java格式化手機號和身份證號,中間使用星號*隱藏Java
- 用python抓取智聯招聘資訊並存入excelPythonExcel
- excel表格身份證如何調成正確格式 excel怎麼調身份證格式Excel
- Java爬蟲-爬取疫苗批次資訊Java爬蟲