Điều tôi đang làm là cơ bản giống như nút Tweet hoặc nút Chia sẻ/Thích Facebook, và đó là để xóa một trang và nhiều nhất tiêu đề có liên quan cho một phần dữ liệu. Ví dụ tốt nhất tôi có thể nghĩ đến là khi bạn đang ở trên trang đầu của một trang web có nhiều bài viết và bạn nhấp vào nút Thích trên Facebook. Sau đó nó sẽ nhận được thông tin thích hợp cho bài đăng tương đối với nút Like (gần nhất). Một số trang web có thẻ Open Graph, nhưng một số thì không và nó vẫn hoạt động.Điều khiển từ xa và lấy tiêu đề phù hợp nhất hoặc mô tả cho hình ảnh với XPath
Vì điều này được thực hiện từ xa, tôi chỉ có quyền kiểm soát dữ liệu mà tôi muốn nhắm mục tiêu. Trong trường hợp này dữ liệu là hình ảnh. Thay vì chỉ truy xuất <title>
của trang, tôi đang tìm cách bằng cách nào đó đi ngang qua mái vòm ngược lại từ điểm bắt đầu của mỗi hình ảnh và tìm "tiêu đề" gần nhất. Vấn đề là không phải tất cả các tiêu đề đều xuất hiện trước một hình ảnh. Tuy nhiên, cơ hội của hình ảnh xảy ra sau khi tiêu đề trong trường hợp này có vẻ khá cao. Với điều đó đã nói, đó là hy vọng của tôi để làm cho nó hoạt động tốt cho gần như bất kỳ trang web.
Suy nghĩ:
- Tìm "container" của hình ảnh và sau đó sử dụng khối đầu tiên của văn bản.
- Tìm các khối văn bản trong các thành phần chứa các lớp nhất định ("mô tả", "tiêu đề") hoặc các phần tử (h1, h2, h3, h4).
sao lưu Title:
- Sử dụng mở Graph Thẻ
- Sử dụng chỉ là
<title>
- Sử dụng thẻ ALT chỉ
- Sử dụng Tags META
Tóm tắt: Trích xuất hình ảnh không phải là vấn đề, đó là cách để có được các tiêu đề liên quan cho họ.
Câu hỏi: Bạn sẽ nhận được các tiêu đề liên quan cho từng hình ảnh như thế nào? Có lẽ sử dụng DomDocument hoặc XPath?
Thành thực mà nói, sau khi bạn cạo nó với PHP, nếu bạn có thể chuyển nó qua các cuộc gọi REST tới một máy chủ Web Java nhỏ, bạn có thể sử dụng JSOUP để dễ dàng truy cập vào tất cả các phần tử và các thuộc tính đó. JSOUP giống như jQuery cho Java và sử dụng nhiều cú pháp giống nhau. Tôi muốn nó có sẵn cho PHP vì nó sẽ làm cho vấn đề của bạn biến mất trong vài giây! – jmort253
có một số thư viện có sẵn để xử lý việc trích xuất nội dung từ các trang, mặc dù tôi không biết một trong số đó có giao dịch trực tiếp với hình ảnh. nhưng bạn có thể nhận được một số ý tưởng và chỉ đường hoặc có thể sử dụng chúng. đây là một: http://code.google.com/p/boilerpipe/wiki/Components –
Cảm ơn những suy nghĩ của bạn.Tôi đã cập nhật câu hỏi của mình để nhắm mục tiêu nhiều hơn "logic" đằng sau việc nhận tiêu đề hoặc mô tả có liên quan cho mỗi hình ảnh thay vì cách tự tải hình ảnh. – stwhite