python讀取手機通訊錄 python爬取通訊錄

2021-10-19 03:48:26 字數 2092 閱讀 4821

from selenium import webdriver

from selenium.webdriver.common.by import by

from selenium.webdriver.support.ui import webdriverwait

from selenium.webdriver.support import expected_conditions as ec

import time

import csv

# 1.建立瀏覽器物件

#chrome版本較高,禁用gpu加速,否則一直報錯

chrome_opt = webdriver.chromeoptions()

chrome_opt.add_argument('--disable-gpu')

path = r"chromedriver.exe"

driver = webdriver.chrome(executable_path=path,chrome_options=chrome_opt)

# 2.操作瀏覽器物件

#取出內容放入列表

def get_content():

list=

for i in range(2,30):

for s in range(1,10):

#遍歷出xpath路徑

str=f'//*[@id="form1"]/table/tbody/tr/td'

text=driver.find_element_by_xpath(str).text

return list

#對內容列表進行分組,形成列表的列表

def sort_writer(*list):

step=9

listers=[list[i:i+9] for i in range(0,len(list),step)]

with open("./zhaopin.csv","w",newline='') as f:

writer=csv.writer(f)

writer.writerows(listers)

#迴圈控制頁數

for i in range(1,400):

try:

a=get_content()

sort_writer(*a)

except exception as ide:

print("出錯了!停止")

所有通訊錄內容在 tbody》tr》td 中

#把查詢到的文字組裝成list

listconters=

conters=opq("tbody").eq(1).find("tr").children()

for td in conters:

w=td.text

#列表按個數重新分組,形成列表的列表,類似[ [a],[b],[c]..]

step=9

listconter=[listconters[i:i+step]for i in range(0,len(listconters),step)]

print(listconter)

#writerow寫一行,writerows寫列表每一項為一行,newline屬性可以避免多一行空白行

with open("./通訊錄.csv","w",newline="") as f:

writer = csv.writer (f)

writer.writerows(listconter)

ContentProvider讀取通訊錄和聯絡歷史

通過使用contentresolver讀取系統發布好的通訊錄相關的資料庫內容,並可以將裡面的資料取得,列表顯示。public class mainactivity extends activity null 隨意記錄乙個 一邊撥叫,這裡記錄迴圈中的最後乙個 string number c2.move...

讀取通訊錄資訊

void readallpeoples 取得本地通訊錄名柄 abaddressbookref tmpaddressbook nil if uidevicecurrentdevice systemversionfloatvalue 6.0 tmpaddressbook abaddressbookcre...

獲取手機通訊錄

在公司裡寫了一段上傳使用者通訊錄的 寫下來,以便以後查閱 獲取手機裡的通訊錄 獲取通訊錄 param context return 返回包含使用者名稱,與號碼的arraylist public arraylistgetcontact context context phones.close alla...